1/* Test for -Wtraditional warnings on label conflicts with identifiers. 2 Note, gcc should omit these warnings in system header files. 3 Origin: Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 8/24/2000. */ 4/* { dg-do compile } */ 5/* { dg-options "-Wtraditional" } */ 6 7enum foo1 { a }; 8struct foo2 { int i; }; 9union foo3 { int j; }; 10int foo4; 11typedef int foo5; 12 13void 14testfunc1 (foo6) 15 int foo6; 16{ 17 int foo7; 18 19 foo1: 20 foo2: 21 foo3: 22 foo4: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */ 23 foo5: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */ 24 foo6: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */ 25 foo7: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */ 26 testfunc1: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */ 27 a: /* { dg-warning "traditional C lacks" "label conflicts with identifier" } */ 28 i: 29 j: ; 30} 31 32# 32 "sys-header.h" 3 33/* We are in system headers now, no -Wtraditional warnings should issue. */ 34 35void 36testfunc2 (foo6) 37 int foo6; 38{ 39 int foo7; 40 41 foo1: 42 foo2: 43 foo3: 44 foo4: 45 foo5: 46 foo6: 47 foo7: 48 testfunc2: 49 a: 50 i: 51 j: ; 52} 53