1 /* PR target/39678 */
2 /* { dg-do run } */
3 /* { dg-options "-Wno-psabi" } */
4 
5 struct X {
6   signed char c;
7   __complex__ float val;
8 };
9 
10 struct X __attribute__((noinline))
foo(float * p)11 foo (float *p)
12 {
13   struct X x;
14   x.c = -3;
15   __real x.val = p[0];
16   __imag x.val = p[1];
17   return x;
18 }
19 extern void abort (void);
20 float a[2] = { 3., -2. };
main()21 int main()
22 {
23   struct X x = foo(a);
24   if (x.c != -3 || __real x.val != a[0] || __imag x.val != a[1])
25     abort ();
26   return 0;
27 }
28