diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/warn/Wunused-label-1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/warn/Wunused-label-1.C | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-label-1.C b/gcc/testsuite/g++.dg/warn/Wunused-label-1.C new file mode 100644 index 000000000..96f49b321 --- /dev/null +++ b/gcc/testsuite/g++.dg/warn/Wunused-label-1.C @@ -0,0 +1,28 @@ +// { dg-do compile } +// { dg-options "-Wunused-label" } + +extern void f9(); + +void +f1() +{ + l1: f9(); // { dg-warning "not used" } + l3: ; f9(); // { dg-warning "not used" } + l4: __attribute__ ((unused)) ; f9(); +} + +void +f2() +{ + label: __attribute ((unused)) ; +} + +void +f3() +{ + // The next line would be OK in C but is a syntax error in C++. + l2: __attribute__ ((unused)) f9(); // { dg-error "expected" } + // We still get an unused label warning--this is + // optional and can be removed if it ever changes. + // { dg-warning "not used" "expected" { target *-*-* } 24 } +} |