1 // PR optimization/6189
2 // Bug: we forgot about foo's nrv after writing it out.
3 // { dg-options -O3 }
4 // { dg-do run }
5 
6 struct A
7 {
8   int i;
9 };
10 
11 
foo()12 A foo ()
13 {
14   A a;
15   a.i = 42;
16   return a;
17 }
18 
19 
main()20 int main()
21 {
22   A b = foo();
23   return b.i != 42;
24 }
25