1 // { dg-do run } 2 struct foo { barfoo3 static int bar () 4 { 5 int i; 6 static int baz = 1; 7 { 8 static int baz = 2; 9 i = baz++; 10 } 11 { 12 struct baz { 13 static int m () 14 { 15 static int n; 16 return n += 10; 17 } 18 }; 19 baz a; 20 i += a.m (); 21 } 22 { 23 static int baz = 3; 24 i += baz; 25 baz += 30; 26 } 27 i += baz; 28 baz += 60; 29 return i; 30 } 31 }; 32 main()33int main () 34 { 35 foo x; 36 37 if (x.bar () != 16) 38 return 1; 39 if (x.bar() != 117) 40 return 1; 41 return 0; 42 } 43