/* Test that the NRV optimization doesn't cause a1 to change too soon. This is equivalent to c++/19317. *//* { dg-do run } */voidabort(void);structA{inti[100];};structAa1;structAf(){structAa2;a2.i[0]=42;/* a1.i[0] should still be 0 until we return. */if(a1.i[0]!=0)abort();returna2;}intmain(){a1=f();return0;}