summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/sfinae3.C
blob: 349463d95fe3680f893bbbdd704148cfc69f4588 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// PR c++/24671
// { dg-do compile }

template<typename> struct A
{
  typedef int X;
  static const int i = 0;
};

template<typename> struct B
{
  B(const B&);
  typedef typename A<char[A<B>::i]>::X Y; // { dg-error "forbids zero-size array" }
  template<typename T> B(T, Y);
};

B<int> b(0,0); // { dg-message "instantiated from here" }