1 /* Test that sibling call is not used if there is an argument overlap. */
3 extern void abort (void);
11 foo2 (struct S x
, struct S y
)
13 if (x
.a
!= 3 || x
.b
!= 4 || x
.c
!= 5)
15 if (y
.a
!= 6 || y
.b
!= 7 || y
.c
!= 8)
21 foo3 (struct S x
, struct S y
, struct S z
)
24 if (z
.a
!= 9 || z
.b
!= 10 || z
.c
!= 11)
30 bar2 (struct S x
, struct S y
)
36 bar3 (struct S x
, struct S y
, struct S z
)
38 return foo3 (y
, x
, z
);
42 baz3 (struct S x
, struct S y
, struct S z
)
44 return foo3 (y
, z
, x
);
50 struct S a
= { 3, 4, 5 }, b
= { 6, 7, 8 }, c
= { 9, 10, 11 };