aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.pt/explicit77.C')
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/explicit77.C18
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C
new file mode 100644
index 00000000000..5a07f8e0168
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C
@@ -0,0 +1,18 @@
+// Build don't link:
+
+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>);
+
+void g() {
+ S<0, 0, 0> s0;
+ S<0, 1, 2> s2;
+
+ f<0>(s0, s2);
+ f(s0, s2); // ERROR - no matching function
+}