blob: 78a4d6b0a4b6934b3f920b98493a60d958ffa551 [file] [log] [blame]
/* Test for -Wtraditional warnings on label conflicts with identifiers.
Note, gcc should omit these warnings in system header files.
Origin: Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 8/24/2000. */
/* { dg-do compile } */
/* { dg-options "-Wtraditional" } */
enum foo1 { a };
struct foo2 { int i; };
union foo3 { int j; };
int foo4;
typedef int foo5;
void
testfunc1 (foo6)
int foo6;
{
int foo7;
foo1:
foo2:
foo3:
foo4: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */
foo5: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */
foo6: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */
foo7: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */
testfunc1: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */
a: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */
i:
j: ;
}
# 32 "sys-header.h" 3
/* We are in system headers now, no -Wtraditional warnings should issue. */
void
testfunc2 (foo6)
int foo6;
{
int foo7;
foo1:
foo2:
foo3:
foo4:
foo5:
foo6:
foo7:
testfunc2:
a:
i:
j: ;
}