diff options
| author | Douglas Gregor <dgregor@apple.com> | 2012-04-16 18:27:27 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2012-04-16 18:27:27 +0000 |
| commit | 433e05306fa0217598535211103641221b9021ce (patch) | |
| tree | 3529a26e1b3685172e00a8aabb16dc5d4543d998 /clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp | |
| parent | 505a7c818d9686f8044ce83c6de9e8c234af9f98 (diff) | |
| download | bcm5719-llvm-433e05306fa0217598535211103641221b9021ce.tar.gz bcm5719-llvm-433e05306fa0217598535211103641221b9021ce.zip | |
Implement the last part of C++ [class.mem]p2, delaying the parsing of
exception specifications on member functions until after the closing
'}' for the containing class. This allows, for example, a member
function to throw an instance of its own class. Fixes PR12564 and a
fairly embarassing oversight in our C++98/03 support.
llvm-svn: 154844
Diffstat (limited to 'clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp')
| -rw-r--r-- | clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp b/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp index 6955219e7ae..726e22227ed 100644 --- a/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp +++ b/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp @@ -164,7 +164,7 @@ template<typename T, typename... Types> // FIXME: this should test that the diagnostic reads "type contains..." struct alignas(Types) TestUnexpandedDecls : T{ // expected-error{{expression contains unexpanded parameter pack 'Types'}} void member_function(Types); // expected-error{{declaration type contains unexpanded parameter pack 'Types'}} - void member_function () throw(Types); // expected-error{{declaration type contains unexpanded parameter pack 'Types'}} + void member_function () throw(Types); // expected-error{{exception type contains unexpanded parameter pack 'Types'}} operator Types() const; // expected-error{{declaration type contains unexpanded parameter pack 'Types'}} Types data_member; // expected-error{{data member type contains unexpanded parameter pack 'Types'}} static Types static_data_member; // expected-error{{declaration type contains unexpanded parameter pack 'Types'}} |

