1/* PR target/39678 */
2/* { dg-do compile } */
3/* { dg-require-effective-target lp64 } */
4/* { dg-options "-O2" } */
5
6struct X {
7  char c;
8  __complex__ float val;
9};
10
11struct X
12foo (float *p)
13{ /* { dg-message "note: The ABI of passing structure with complex float member has changed in GCC 4.4" } */
14  struct X x;
15  x.c = -3;
16  __real x.val = p[0];
17  __imag x.val = p[1];
18  return x;
19}
20