1 /* Copyright (C) 2001 Free Software Foundation, Inc.  */
2 
3 /* { dg-do compile } */
4 /* { dg-options "-Wshadow -pedantic-errors" } */
5 
6 /* Source: Neil Booth, 5 Dec 2001.  */
7 
8 int decl1;			/* { dg-warning "shadowed declaration" } */
foo(double decl1)9 void foo (double decl1)		/* { dg-warning "shadows a global decl" } */
10 {
11 }
12 
foo1(int d)13 void foo1 (int d)		/* { dg-message "note: previous definition" } */
14 {
15   double d;	 /* { dg-bogus "warning" "warning in place of error" } */
16   /* { dg-error "redeclared as different" "" { target *-*-* } 15 } */
17 }
18 
foo2(int d)19 void foo2 (int d)		/* { dg-warning "shadowed declaration" } */
20 {
21   {
22     double d;			/* { dg-warning "shadows a parameter" } */
23   }
24 }
25 
foo3()26 void foo3 ()
27 {
28   int local;			/* { dg-warning "shadowed declaration" } */
29   {
30     int local;			/* { dg-warning "shadows a previous local" } */
31   }
32 }
33