1 /* Test that the tree_nrv pass works by making sure that we don't generate
2    a memcpy.  Throw in a bit of control flow to make its job a bit harder.  */
3 
4 /* { dg-options "-O" } */
5 
6 struct A { int i[100]; };
7 
8 int b;
9 
f()10 struct A f ()
11 {
12   struct A a;
13   if (b)
14     {
15       a.i[0] = 42;
16       return a;
17     }
18   else
19     {
20       a.i[42] = 1;
21       return a;
22     }
23 }
24 
25 /* { dg-final { scan-assembler-not "memcpy" } } */
26