aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/ttp5.C
blob: d26b8164eed8b62a37428941e7c63bc8dc8b4eaf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// { dg-do compile }

// Origin: sneechy@hotmail.com

// PR c++/8772: Incorrect diagnostics for template template parameter
// mismatch

template <int> struct A {
  template <int> struct B {
    enum { v = 1 };
  };
};

template <template <int> class F> struct C {
  enum { v = F<1>::v || 2 }; 
};

template <int n> struct D {
  enum { v = C<A<n>::B>::v }; // { dg-error "mismatch|class template|not a member" }
};