diff options
| -rw-r--r-- | clang/test/Parser/cxx0x-lambda-expressions.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/clang/test/Parser/cxx0x-lambda-expressions.cpp b/clang/test/Parser/cxx0x-lambda-expressions.cpp index 6d39a730478..e4151dc8888 100644 --- a/clang/test/Parser/cxx0x-lambda-expressions.cpp +++ b/clang/test/Parser/cxx0x-lambda-expressions.cpp @@ -24,7 +24,6 @@ class C { [] () -> class C { return C(); }; [] () -> enum E { return e; }; - [] [[fake_ident]] { while (1) ; }; // expected-error {{lambda requires '()' before attribute specifier}} expected-warning {{unknown attribute 'fake_ident' ignored}} [] -> int { return 0; }; // expected-error{{lambda requires '()' before return type}} [] mutable -> int { return 0; }; // expected-error{{lambda requires '()' before 'mutable'}} [](int) -> {}; // PR13652 expected-error {{expected a type}} @@ -65,4 +64,16 @@ class C { return x + 2; } (); } + + void attributes() { + [] [[]] {}; // expected-error {{lambda requires '()' before attribute specifier}} + []() [[]] + mutable {}; // expected-error {{expected body of lambda expression}} + + []() [[]] {}; + []() [[]] -> void {}; + []() mutable [[]] -> void {}; + []() mutable noexcept [[]] -> void {}; + +} }; |

