PR c++/44629
* pt.c (unify): An unresolved overload is a nondeduced context.
From-SVN: r170825
+2011-03-09 Jason Merrill <jason@redhat.com>
+
+ PR c++/44629
+ * pt.c (unify): An unresolved overload is a nondeduced context.
+
2011-03-08 Jason Merrill <jason@redhat.com>
PR c++/45651
return 1;
default:
+ /* An unresolved overload is a nondeduced context. */
+ if (type_unknown_p (parm))
+ return 0;
gcc_assert (EXPR_P (parm));
/* We must be looking at an expression. This can happen with
+2011-03-09 Jason Merrill <jason@redhat.com>
+
+ * g++.dg/template/nontype22.C: New.
+
2011-03-08 Jason Merrill <jason@redhat.com>
* g++.dg/template/anon5.C: New.
--- /dev/null
+// PR c++/44629
+// The proper mangling is unclear.
+
+template<typename T> int cmp1(T a, T b);
+template<typename T, int (*cmp)(T, T) = cmp1> struct A { };
+template <typename T> void f (A<T> &);
+void g()
+{
+ A<char> a;
+ f(a); // { dg-bogus "" "" { xfail *-*-* } }
+}