summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.pt/const2.C
blob: 3ca4a532b19878b284f427326eba2648e327c839 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// { dg-do link }
// This test should get a linker error for the reference to A<int>::i.
// { dg-prune-output "ld: symbol" }
// { dg-message "i" "" { target *-*-* } 0 }

template <class T> struct B { static const int i = 3; };
template <class T> struct A { static const int i = B<T>::i; };
const int *p = &A<int>::i;

int main ()
{
  // Examine p to prevent optimising linkers from discarding it.
  return (p != 0);
}