/cp
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57327
* pt.c (unify_no_common_base): Swap arg and parm arguments to inform.
/testsuite
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57327
* g++.dg/template/error50.C: New.
From-SVN: r199097
+2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/57327
+ * pt.c (unify_no_common_base): Swap arg and parm arguments to inform.
+
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/10207
{
case tbr_ambiguous_baseclass:
inform (input_location, " %qT is an ambiguous base class of %qT",
- arg, parm);
+ parm, arg);
break;
default:
inform (input_location, " %qT is not derived from %qT", arg, parm);
+2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/57327
+ * g++.dg/template/error50.C: New.
+
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/10207
--- /dev/null
+// PR c++/57327
+
+template<class T>
+struct A {};
+
+template<class T>
+void f(A<T>&) {}
+
+struct B : A<long> {};
+
+struct C : A<char> {};
+
+struct D : B, C {};
+
+int main()
+{
+ D d;
+ f(d); // { dg-error "no matching" }
+} // { dg-message "'A<T>' is an ambiguous base" "" { target *-*-* } 18 }