blob: 1647a010d12289ba4bbeadc8bc87dfe3918a8c3c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
/* Copyright (C) 2001, 2002 Free Software Foundation, Inc. */
/* { dg-do compile } */
/* { dg-options -Wshadow } */
/* Source: Neil Booth, 3 Nov 2001, and PR 16, 713. -Wshadow was
giving a bunch of warnings we didn't want, and wasn't giving the
location of the shadowed variable. */
struct status // { dg-bogus "shadowed declaration" }
{
int member;
void foo2 ();
inline static int foo3 (int member) // { dg-bogus "shadows" }
{
return member;
}
};
int decl1; // { dg-warning "shadowed declaration" }
int decl2; // { dg-warning "shadowed declaration" }
void foo (struct status &status,// { dg-bogus "shadows a global decl" }
double decl1) // { dg-warning "shadows a global decl" }
{
}
void foo1 (int d)
{
double d; // { dg-error "shadows a parameter" }
}
void status::foo2 ()
{
int member; // { dg-warning "shadows a member" }
int decl2; // { dg-warning "shadows a global decl" }
int local; // { dg-warning "shadowed declaration" }
{
int local; // { dg-warning "shadows a previous local" }
}
}
|