1 /* { dg-do compile } */
2 /* { dg-options "-O -fdump-tree-optimized" } */
3 
4 float
quantum_real(float _Complex a)5 quantum_real(float _Complex a)
6 {
7   float *p = (float *) &a;
8   return p[0];
9 }
10 float
quantum_imag(float _Complex a)11 quantum_imag(float _Complex a)
12 {
13   float *p = (float *) &a;
14   return p[1];
15 }
16 float
quantum_foo(float _Complex a)17 quantum_foo(float _Complex a)
18 {
19   float *p = (float *) &a;
20   return p[2];
21 }
22 
23 /* { dg-final { scan-tree-dump-times "REALPART_EXPR" 1 "optimized" } } */
24 /* { dg-final { scan-tree-dump-times "IMAGPART_EXPR" 1 "optimized" } } */
25