diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2013-06-13 20:56:27 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2013-06-13 20:56:27 +0000 |
commit | 95099ef43aff8fb3d5d47bed0a583e7977f4b3f4 (patch) | |
tree | 9d07c82557a83165ad1debd25f21f8d72521321f /test/CodeGenObjCXX | |
parent | 57a3bbfa9a97f174b0c80b0309e32f4329c4ae1b (diff) | |
download | clang-95099ef43aff8fb3d5d47bed0a583e7977f4b3f4.tar.gz |
Followup to r183931 to fix the lambda conversion-to-block-pointer member.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183942 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenObjCXX')
-rw-r--r-- | test/CodeGenObjCXX/lambda-expressions.mm | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/test/CodeGenObjCXX/lambda-expressions.mm b/test/CodeGenObjCXX/lambda-expressions.mm index c73e1727d6..acb8efb4b5 100644 --- a/test/CodeGenObjCXX/lambda-expressions.mm +++ b/test/CodeGenObjCXX/lambda-expressions.mm @@ -60,6 +60,15 @@ void take_block(void (^block)()) { block(); } } @end -// ARC: attributes [[NUW]] = { nounwind{{.*}} } +typedef int (^fptr)(); +template<typename T> struct StaticMembers { + static fptr f; +}; +template<typename T> +fptr StaticMembers<T>::f = [] { auto f = []{return 5;}; return fptr(f); }(); +template fptr StaticMembers<float>::f; +// ARC: define linkonce_odr i32 ()* @_ZZNK13StaticMembersIfE1fMUlvE_clEvENKUlvE_cvU13block_pointerFivEEv + +// ARC: attributes [[NUW]] = { nounwind{{.*}} } // MRC: attributes [[NUW]] = { nounwind{{.*}} } |