| // Wshadows was giving warnings for nested function parameters in nested class |
| // or structure that we didn't want. |
| // { dg-do compile } |
| // { dg-options "-Wshadow -Wno-return-type" } |
| |
| // PR c++/41825 |
| int f (int n) |
| { |
| int bar (int n) { return n++; } // { dg-error "a function-definition is not allowed here" } |
| return bar (n); // { dg-error "12:'bar' was not declared in this scope" } |
| } |
| |
| int g (int i) |
| { |
| struct { |
| int bar (int i) { return i++; } // { dg-bogus "shadows" } |
| } s; |
| |
| return s.bar (i); |
| } |
| |
| // PR c++/30566 |
| void h( int x ) |
| { |
| class InnerClass |
| { |
| public: |
| static int g( int x ) // { dg-bogus "shadows" } |
| { |
| // empty |
| } |
| }; |
| } |