1// PR tree-optimization/42890 2// { dg-do compile } 3 4extern "C" int puts (const char *) throw (); 5 6struct S 7{ 8 const char *a; 9 const char **b; 10 S (const char *s) { a = s; b = &a; } 11 ~S () { puts (a); } 12}; 13 14void 15foo (int (*fn) (const char *)) 16{ 17 S a ("foo"); 18 fn ("bar"); 19} 20 21int 22main () 23{ 24 foo (puts); 25} 26