aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C
blob: b97c1cd02237a75528c768f6711ea3f5ffeb75a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// { dg-do assemble  }

template <int I, int J, int K>
struct S {};

template <int I, int J>
struct S<I, J, 2> : public S<I, I, I>, S<J, J, J> {};

template <int I, int J, int K>
void f(S<I, J, K>, S<I, I, I>);	// { dg-message "note" }

void g() {
  S<0, 0, 0> s0;
  S<0, 1, 2> s2;
  
  f<0>(s0, s2);
  f(s0, s2); // { dg-error "" } no matching function
  // { dg-message "(candidate|deduced conflicting types|ambiguous base class)" "candidate note" { target *-*-* } 17 }
}