1 /* { dg-do assemble } */ 2 /* { dg-options "-O1" }*/ 3 // This was PR C++/31165 4 // We used to copy the whole decl when we just wantted to 5 // unshare some expressions for the default argument. 6 class string { 7 char *ptr; 8 int len; 9 int sz; 10 }; 11 class cset { } _cset_init; 12 string an_empty_string; 13 void f(string& = an_empty_string); 14 void h(void)15h (void ) 16 { 17 f(); 18 } 19 20 21