https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102547

Patrick Palka <ppalka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |ppalka at gcc dot 
gnu.org

--- Comment #3 from Patrick Palka <ppalka at gcc dot gnu.org> ---
I think I have a potential fix -- replace the problematic call to
uses_template_parms with dependent_template_arg_p:

--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -23587,7 +23587,7 @@ unify (tree tparms, tree targs, tree parm, tree arg,
int strict,
      even if ARG == PARM, since we won't record unifications for the
      template parameters.  We might need them if we're trying to
      figure out which of two things is more specialized.  */
-  if (arg == parm && !uses_template_parms (parm))
+  if (arg == parm && !dependent_template_arg_p (parm))
     return unify_success (explain_p);

   /* Handle init lists early, so the rest of the function can assume

So mine I suppose.

Reply via email to