diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-02-06 21:50:18 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-02-06 21:50:18 +0000 |
commit | 8f66cdffa00fde5b7536178c05cd4ade1239a529 (patch) | |
tree | 7f45753a6a770a8cc6702be3d4d1587ef7fe7910 /clang/test/SemaCXX/lambda-expressions.cpp | |
parent | d22b98aad24577c224813c0a301affa9fae8e57f (diff) | |
download | bcm5719-llvm-8f66cdffa00fde5b7536178c05cd4ade1239a529.tar.gz bcm5719-llvm-8f66cdffa00fde5b7536178c05cd4ade1239a529.zip |
Fix the result of VarDecl::checkInitIsICE so it is consistently accurate in C++11 mode. PR11928.
llvm-svn: 149908
Diffstat (limited to 'clang/test/SemaCXX/lambda-expressions.cpp')
-rw-r--r-- | clang/test/SemaCXX/lambda-expressions.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/lambda-expressions.cpp b/clang/test/SemaCXX/lambda-expressions.cpp index 05aba53dbba..46c74c3c74e 100644 --- a/clang/test/SemaCXX/lambda-expressions.cpp +++ b/clang/test/SemaCXX/lambda-expressions.cpp @@ -79,5 +79,8 @@ namespace ImplicitCapture { [=]() { const G* gg = &g; return gg->a; }; // expected-error {{not supported yet}} [=]() { return [=]{ const G* gg = &g; return gg->a; }(); }; // expected-error {{no matching constructor for initialization of 'const ImplicitCapture::G'}} expected-error 2 {{not supported yet}} (void)^{ return [=]{ const G* gg = &g; return gg->a; }(); }; // expected-error 2 {{no matching constructor for initialization of 'const ImplicitCapture::G'}} expected-error {{not supported yet}} + + const int h = a; // expected-note {{declared}} + []() { return h; }; // expected-error {{variable 'h' cannot be implicitly captured in a lambda with no capture-default specified}} expected-note {{lambda expression begins here}} expected-error {{not supported yet}} } } |