111
|
1 /* Diagnostics for attempts to access a member not in a structure or
|
|
2 union should name the type involved. Bug 13804. */
|
|
3 /* Origin: Joseph Myers <jsm@polyomino.org.uk> */
|
|
4 /* { dg-do compile } */
|
|
5 /* { dg-options "" } */
|
|
6
|
|
7 struct s0 { int a; };
|
|
8 union u0 { long b; };
|
|
9 typedef struct s0 S0;
|
|
10 typedef union u0 U0;
|
|
11
|
|
12 struct s0 x0;
|
|
13 S0 x1;
|
|
14 union u0 x2;
|
|
15 U0 x3;
|
|
16 struct s0 *x4;
|
|
17 union u0 *x5;
|
|
18
|
|
19 void
|
|
20 f (void)
|
|
21 {
|
|
22 x0.c; /* { dg-error "'struct s0' has no member named 'c'" } */
|
131
|
23 x1.c; /* { dg-error "'S0' {aka 'struct s0'} has no member named 'c'" } */
|
111
|
24 x2.c; /* { dg-error "'union u0' has no member named 'c'" } */
|
131
|
25 x3.c; /* { dg-error "'U0' {aka 'union u0'} has no member named 'c'" } */
|
111
|
26 x4->c; /* { dg-error "'struct s0' has no member named 'c'" } */
|
|
27 x5->c; /* { dg-error "'union u0' has no member named 'c'" } */
|
|
28 }
|