1 /* { dg-do compile } */
2 
3 _Complex float
test1(_Complex float f)4 test1 (_Complex float f)
5 {
6   __asm__ ("" : "+r" (__real f));
7   return f;
8 }
9 
10 _Complex float
test2(_Complex float f)11 test2 (_Complex float f)
12 {
13   __asm__ ("" : "=r" (__real f));
14   return f;
15 }
16 
17 struct X { int i; };
18 
19 struct X
test3(struct X x)20 test3 (struct X x)
21 {
22   __asm__ ("" : "=r" (x.i));
23   return x;
24 }
25 
26 struct X
test4(struct X x)27 test4 (struct X x)
28 {
29   __asm__ ("" : "+r" (x.i));
30   return x;
31 }
32 
33 struct X
test5(struct X x)34 test5 (struct X x)
35 {
36   __asm__ ("" : "=r" (x));
37   return x;
38 }
39 
40 struct X
test6(struct X x)41 test6 (struct X x)
42 {
43   __asm__ ("" : "+r" (x));
44   return x;
45 }
46