summaryrefslogtreecommitdiffstats
path: root/test/CXX/except/except.spec/p15.cpp
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2012-12-02 13:20:44 +0000
committerdim <dim@FreeBSD.org>2012-12-02 13:20:44 +0000
commit056abd2059c65a3e908193aeae16fad98017437c (patch)
tree2732d02d7d51218d6eed98ac7fcfc5b8794896b5 /test/CXX/except/except.spec/p15.cpp
parentcc73504950eb7b5dff2dded9bedd67bc36d64641 (diff)
downloadFreeBSD-src-056abd2059c65a3e908193aeae16fad98017437c.zip
FreeBSD-src-056abd2059c65a3e908193aeae16fad98017437c.tar.gz
Vendor import of clang release_32 branch r168974 (effectively, 3.2 RC2):
http://llvm.org/svn/llvm-project/cfe/branches/release_32@168974
Diffstat (limited to 'test/CXX/except/except.spec/p15.cpp')
-rw-r--r--test/CXX/except/except.spec/p15.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/test/CXX/except/except.spec/p15.cpp b/test/CXX/except/except.spec/p15.cpp
index 110ec3fa..fcf1235 100644
--- a/test/CXX/except/except.spec/p15.cpp
+++ b/test/CXX/except/except.spec/p15.cpp
@@ -9,16 +9,20 @@ void f() {
delete[] new int[1];
}
-void operator delete(void*) noexcept;
-void operator delete[](void*) noexcept;
+void operator delete(void*);
+void operator delete[](void*);
+
+static_assert(noexcept(operator delete(0)), "");
+static_assert(noexcept(operator delete[](0)), "");
// Same goes for explicit declarations.
void operator delete(void*, float);
-void operator delete(void*, float) noexcept;
-
void operator delete[](void*, float);
-void operator delete[](void*, float) noexcept;
+
+static_assert(noexcept(operator delete(0, 0.f)), "");
+static_assert(noexcept(operator delete[](0, 0.f)), "");
// But explicit specs stay.
void operator delete(void*, double) throw(int); // expected-note {{previous}}
+static_assert(!noexcept(operator delete(0, 0.)), "");
void operator delete(void*, double) noexcept; // expected-error {{does not match}}
OpenPOWER on IntegriCloud