annotate gcc/testsuite/g++.dg/warn/Wshadow-5.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 // Wshadows was giving warnings for nested function parameters in nested class
kono
parents:
diff changeset
2 // or structure that we didn't want.
kono
parents:
diff changeset
3 // { dg-do compile }
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
4 // { dg-options "-Wshadow -Wno-return-type" }
111
kono
parents:
diff changeset
5
kono
parents:
diff changeset
6 // PR c++/41825
kono
parents:
diff changeset
7 int f (int n)
kono
parents:
diff changeset
8 {
kono
parents:
diff changeset
9 int bar (int n) { return n++; } // { dg-error "a function-definition is not allowed here" }
kono
parents:
diff changeset
10 return bar (n); // { dg-error "12:'bar' was not declared in this scope" }
kono
parents:
diff changeset
11 }
kono
parents:
diff changeset
12
kono
parents:
diff changeset
13 int g (int i)
kono
parents:
diff changeset
14 {
kono
parents:
diff changeset
15 struct {
kono
parents:
diff changeset
16 int bar (int i) { return i++; } // { dg-bogus "shadows" }
kono
parents:
diff changeset
17 } s;
kono
parents:
diff changeset
18
kono
parents:
diff changeset
19 return s.bar (i);
kono
parents:
diff changeset
20 }
kono
parents:
diff changeset
21
kono
parents:
diff changeset
22 // PR c++/30566
kono
parents:
diff changeset
23 void h( int x )
kono
parents:
diff changeset
24 {
kono
parents:
diff changeset
25 class InnerClass
kono
parents:
diff changeset
26 {
kono
parents:
diff changeset
27 public:
kono
parents:
diff changeset
28 static int g( int x ) // { dg-bogus "shadows" }
kono
parents:
diff changeset
29 {
kono
parents:
diff changeset
30 // empty
kono
parents:
diff changeset
31 }
kono
parents:
diff changeset
32 };
kono
parents:
diff changeset
33 }