1 // { dg-do run } f(int i)2 int f(int i) 3 { 4 struct C { 5 int i; 6 C () : i(1) {} 7 int f() { 8 struct D { 9 int i; 10 D () : i(2) {} 11 int g() { return i; } 12 } d; 13 14 return d.g(); 15 } 16 } c; 17 18 return c.f(); 19 } 20 21 main()22 int main() 23 { 24 if (f(0) != 2) 25 return 1; 26 } 27