gcc/gcc/testsuite/gcc.dg/c11-anon-struct-2.c

58 lines
730 B
C

/* Test for anonymous structures and unions in C11. Test for invalid
cases. */
/* { dg-do compile } */
/* { dg-options "-std=c11 -pedantic-errors" } */
typedef struct s0
{
int i;
} s0;
struct s1
{
int a;
struct s0; /* { dg-error "declaration does not declare anything" } */
};
struct s2
{
int a;
s0; /* { dg-error "declaration does not declare anything" } */
};
struct s3
{
struct
{
int i;
};
struct
{
int i; /* { dg-error "duplicate member" } */
};
};
struct s4
{
int a;
struct s
{
int i;
}; /* { dg-error "declaration does not declare anything" } */
};
struct s5
{
struct
{
int i;
} a;
int b;
} x;
void
f (void)
{
x.i = 0; /* { dg-error "has no member" } */
}