repo.or.cz
/
official-gcc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
2017-11-15 Richard Biener <rguenther@suse.de>
[official-gcc.git]
/
gcc
/
testsuite
/
gcc.dg
/
pr41123.c
blob
076edb46ee53884435e5863c1d1edd4ff3c8a7f2
1
/* PR middle-end/41123 */
2
/* { dg-do compile } */
3
/* { dg-options "-O2 -fno-strict-aliasing" } */
4
5
struct
S
{
char
a
,
b
,
c
,
d
,
e
,
f
,
g
,
h
; };
6
struct
T
{
int
a
,
b
; };
7
8
struct
S
9
f1
(
float
_Complex x
)
10
{
11
return
*(
struct
S
*) &
x
;
12
}
13
14
int
15
f2
(
float
_Complex x
)
16
{
17
struct
S f
=
f1
(
x
);
18
return
f
.
b
;
19
}
20
21
struct
T
22
f3
(
float
_Complex x
)
23
{
24
return
*(
struct
T
*) &
x
;
25
}
26
27
int
28
f4
(
float
_Complex x
)
29
{
30
struct
T f
=
f3
(
x
);
31
return
f
.
a
;
32
}
33
34
int
35
f5
(
float
_Complex x
)
36
{
37
struct
T f
=
f3
(
x
);
38
return
f
.
b
;
39
}
40
41
struct
T
42
f6
(
float
_Complex x
)
43
{
44
struct
T f
=
f3
(
x
);
45
return
f
;
46
}