view gcc/testsuite/g++.dg/warn/Wshadow-5.C @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 84e7813d76e9
children
line wrap: on
line source

// 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
                }
    };
}