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()29 B::foo ()
30 {
31   try
32     {
33       baz ("foo");
34     }
35   catch (...)
36     {
37     }
38 }
39 
40 A
bar()41 B::bar ()
42 {
43   baz ("bar");
44 }
45