diff options
author | Douglas Gregor <dgregor@apple.com> | 2012-02-12 17:34:23 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2012-02-12 17:34:23 +0000 |
commit | 215e4e17d00e12c38687a95502506d8f2ca3e646 (patch) | |
tree | 51065a9d2dd80cb78b9892e5277b6ec0381d43eb /test/CXX/expr/expr.prim/expr.prim.lambda/p20.cpp | |
parent | 3a45c0e61dfc19f27b8ebcb15dd70159a36f1f9a (diff) |
Lambdas have a deleted default constructor and a deleted copy
assignment operator, per C++ [expr.prim.lambda]p19. Make it so.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150345 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CXX/expr/expr.prim/expr.prim.lambda/p20.cpp')
-rw-r--r-- | test/CXX/expr/expr.prim/expr.prim.lambda/p20.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/CXX/expr/expr.prim/expr.prim.lambda/p20.cpp b/test/CXX/expr/expr.prim/expr.prim.lambda/p20.cpp new file mode 100644 index 0000000000..4487cfc4ba --- /dev/null +++ b/test/CXX/expr/expr.prim/expr.prim.lambda/p20.cpp @@ -0,0 +1,12 @@ +// RUN: %clang_cc1 -std=c++11 %s -Wunused -verify + +template<typename T> +void destroy(T* ptr) { + ptr->~T(); + (*ptr).~T(); +} + +void destructor() { + auto lambda = []{}; + destroy(&lambda); +} |