diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/lookup/exception1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/lookup/exception1.C | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/lookup/exception1.C b/gcc/testsuite/g++.dg/lookup/exception1.C new file mode 100644 index 000000000..b5fcd0a6c --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/exception1.C @@ -0,0 +1,33 @@ +/* PR 2743 */ +/* { dg-do compile } */ + +namespace ns { + class Exception + { + }; +} + +namespace ns +{ + class Test { + public: + inline Test() throw( Exception ); + inline Test(int n ) throw( Exception ); + private: + int i; + }; +} + +// This line used to fail because Exception wasn't looked up in the +// right scope. +ns::Test::Test() throw( Exception ) : i( 1 ) +{ +} + +ns::Test::Test( int n ) throw( Exception ) : i( n ) +{ +} + +int main(int argc, char* argv[]) { + ns::Test test; +} |