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
AVR: Overhaul the avr-ifelse RTL optimization pass.
[official-gcc.git]
/
gcc
/
testsuite
/
gcc.dg
/
c11-anon-struct-1.c
blob
779ae66b7e1c743ca8381be37acc320b7d76dd93
1
/* Test for anonymous structures and unions in C11. */
2
/* { dg-do compile } */
3
/* { dg-options "-std=c11 -pedantic-errors" } */
4
5
#include <stddef.h>
6
7
struct
s1
8
{
9
int
a
;
10
union
11
{
12
int
i
;
13
};
14
struct
15
{
16
int
b
;
17
};
18
};
19
20
union
u1
21
{
22
int
b
;
23
struct
24
{
25
int
i
;
26
};
27
union
28
{
29
int
c
;
30
};
31
};
32
33
struct
s2
34
{
35
struct
36
{
37
int
a
;
38
};
39
};
40
41
struct
s3
42
{
43
union
44
{
45
int
i
;
46
};
47
};
48
49
struct
s4
50
{
51
struct
52
{
53
int
i
;
54
};
55
int
a
[];
56
};
57
58
struct
s1 x
=
59
{
60
.
b
=
1
,
61
.
i
=
2
,
62
.
a
=
3
63
};
64
65
int
o
=
offsetof
(
struct
s1
,
i
);
66
67
void
68
f
(
void
)
69
{
70
x
.
i
=
3
;
71
(&
x
)->
i
=
4
;
72
}