[Bug c++/89900] [9 Regression] ICE: Segmentation fault (in check_instantiated_arg)
paolo.carlini at oracle dot com
gcc-bugzilla@gcc.gnu.org
Wed Apr 10 15:56:00 GMT 2019
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.
More information about the Gcc-bugs
mailing list