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

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |paolo.carlini at oracle dot com

--- Comment #4 from Paolo Carlini <paolo.carlini at oracle dot com> ---
Clearly, an important difference between sfinae65.C (the test added in r269965
for c++/86932) and the new testcase is that here we have a type parameter pack,
which, as such, cannot  refer to another parameter. Thus I'm wondering if
restricting the fix for c++/86932 like:

Index: pt.c
===================================================================
--- pt.c        (revision 270223)
+++ pt.c        (working copy)
@@ -8475,7 +8475,8 @@ coerce_template_parms (tree parms,
        arg = NULL_TREE;

       if (template_parameter_pack_p (TREE_VALUE (parm))
-         && (arg || !(complain & tf_partial))
+         && (arg || !(complain & tf_partial)
+             || TREE_CODE (TREE_VALUE (parm)) == TYPE_DECL)
          && !(arg && ARGUMENT_PACK_P (arg)))
         {
          /* Some arguments will be placed in the

would not go a long way toward resolving the problem. Passes testing, seems a
safe change to me.

Reply via email to