1 // PR c++/46368 2 // { dg-options "-std=c++0x" } 3 4 class A; 5 6 class B 7 { 8 A foo (); 9 A bar (); 10 }; 11 12 class C 13 { 14 }; 15 16 struct D 17 { 18 D (C); 19 }; 20 21 struct A : D 22 { AA23 A (const C & n) : D (n) {} 24 }; 25 26 A baz (const char *, A = C ()); 27 28 A foo()29B::foo () 30 { 31 try 32 { 33 baz ("foo"); 34 } 35 catch (...) 36 { 37 } 38 } 39 40 A bar()41B::bar () 42 { 43 baz ("bar"); 44 } 45