36 lines
921 B
C
36 lines
921 B
C
/* { dg-do compile } */
|
|
/* { dg-options "-Wc++-compat" } */
|
|
|
|
struct s1
|
|
{
|
|
enum e1 /* { dg-message "note: enum type defined here" } */
|
|
{
|
|
A, /* { dg-message "note: enum constant defined here" } */
|
|
B
|
|
} f1;
|
|
struct s2 /* { dg-message "note: struct defined here" } */
|
|
{
|
|
struct s3 /* { dg-message "note: struct defined here" } */
|
|
{
|
|
enum e1 f3;
|
|
struct s1 *p1;
|
|
struct s2 *p2;
|
|
struct s3 *p3;
|
|
} f2;
|
|
union u1 /* { dg-message "note: union defined here" } */
|
|
{
|
|
int f4;
|
|
} f5;
|
|
struct s3 f6;
|
|
} f7;
|
|
struct s2 f8;
|
|
enum e1 f9;
|
|
};
|
|
|
|
struct s1 v1;
|
|
enum e1 v2; /* { dg-warning "not visible in C\[+\]\[+\]" } */
|
|
struct s2 v3; /* { dg-warning "not visible in C\[+\]\[+\]" } */
|
|
struct s3 v4; /* { dg-warning "not visible in C\[+\]\[+\]" } */
|
|
union u1 v5; /* { dg-warning "not visible in C\[+\]\[+\]" } */
|
|
int i = A; /* { dg-warning "not visible in C\[+\]\[+\]" } */
|