blob: fcc1b3c3aca7a414f408042000cf533561677552 [file] [log] [blame]
// PR c++/104379
// { dg-do compile }
// { dg-options "-Wshadow" }
int x;
template<typename T>
struct S
{
int i;
S(int i) { (void) i; } // { dg-warning "declaration of 'i' shadows a member of 'S<T>'" }
S(float x) { (void) x; } // { dg-warning "declaration of 'x' shadows a global declaration" }
S(int *p) { int a = 1; (void) p; (void) a;
{ int a = 2; (void) a; } } // { dg-warning "declaration of 'a' shadows a previous local" }
};
S<int> i(1);
S<long> j(1);
S<int> k(1.0f);
S<long> l(1.0f);
S<int> m(&x);
S<int> n(&x);