diff options
Diffstat (limited to 'clang/test/CXX/expr/expr.prim/expr.prim.lambda')
| -rw-r--r-- | clang/test/CXX/expr/expr.prim/expr.prim.lambda/p15.cpp | 4 | ||||
| -rw-r--r-- | clang/test/CXX/expr/expr.prim/expr.prim.lambda/p7.cpp | 12 |
2 files changed, 14 insertions, 2 deletions
diff --git a/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p15.cpp b/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p15.cpp index a02340f8b96..7264fa18d06 100644 --- a/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p15.cpp +++ b/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p15.cpp @@ -5,6 +5,6 @@ class NonCopyable { }; void capture_by_ref(NonCopyable nc, NonCopyable &ncr) { - [&nc] {}; // expected-error{{lambda expressions are not supported yet}} - [&ncr] {}; // expected-error{{lambda expressions are not supported yet}} + [&nc] () -> void {}; // expected-error{{lambda expressions are not supported yet}} + [&ncr] () -> void {}; // expected-error{{lambda expressions are not supported yet}} } diff --git a/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p7.cpp b/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p7.cpp new file mode 100644 index 00000000000..239b6d4f469 --- /dev/null +++ b/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p7.cpp @@ -0,0 +1,12 @@ +// RUN: %clang_cc1 -fsyntax-only -std=c++11 %s -verify + +// Check that analysis-based warnings work in lambda bodies. +void analysis_based_warnings() { + []() -> int { }; // expected-warning{{control reaches end of non-void function}} \ + // expected-error{{lambda expressions are not supported yet}} +} + +// FIXME: Also check translation of captured vars to data members, +// most of which isn't in the AST. + + |

