diff options
Diffstat (limited to 'clang/test/SemaCXX/nothrow-vs-exception-specs.cpp')
-rw-r--r-- | clang/test/SemaCXX/nothrow-vs-exception-specs.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/nothrow-vs-exception-specs.cpp b/clang/test/SemaCXX/nothrow-vs-exception-specs.cpp index f9bc90e30ed..563f6040670 100644 --- a/clang/test/SemaCXX/nothrow-vs-exception-specs.cpp +++ b/clang/test/SemaCXX/nothrow-vs-exception-specs.cpp @@ -53,3 +53,16 @@ __declspec(nothrow) void foo4() noexcept(noexcept(foo1())); __declspec(nothrow) void foo5() noexcept(noexcept(foo2())); // expected-warning@+1{{'nothrow' attribute conflicts with exception specification; attribute ignored}} __declspec(nothrow) void foo6() noexcept(noexcept(foo3())); + +// FIXME: It would be nice to be able to warn on these, however at the time we +// evaluate the nothrow, these have yet to be parsed, so the data is not yet +// there. +struct S { + __declspec(nothrow) void f1(); +#ifndef CPP17 + __declspec(nothrow) void f2() throw(); + __declspec(nothrow) void f3() throw(int); +#endif + __declspec(nothrow) void f4() noexcept(true); + __declspec(nothrow) void f5() noexcept(false); +}; |