https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113170
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Keywords| |ice-on-invalid-code Last reconfirmed| |2023-12-31 --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- ``` #5 0x0000000000c4dd6b in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba4800, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/cp/pt.cc:9115 #6 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #7 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7180, arg=0x7ffff7fb7100, args=0x7ffff6ba5898, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #8 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff7309af0, args=0x7ffff6ba47e0, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #9 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #10 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7080, arg=0x7ffff7fb7200, args=0x7ffff6ba5870, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #11 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba47c0, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #12 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #13 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7180, arg=0x7ffff7fb7100, args=0x7ffff6ba5848, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #14 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff7309af0, args=0x7ffff6ba47a0, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #15 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #16 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7080, arg=0x7ffff7fb7200, args=0x7ffff6ba5820, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #17 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba4780, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #18 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #19 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7180, arg=0x7ffff7fb7100, args=0x7ffff6ba57f8, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #20 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff7309af0, args=0x7ffff6ba4760, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #21 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #22 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7080, arg=0x7ffff7fb7200, args=0x7ffff6ba57d0, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #23 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba4740, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #24 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #25 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7180, arg=0x7ffff7fb7100, args=0x7ffff6ba57a8, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #26 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff7309af0, args=0x7ffff6ba4720, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #27 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #28 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7080, arg=0x7ffff7fb7200, args=0x7ffff6ba5780, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #29 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba4700, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #30 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #31 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7180, arg=0x7ffff7fb7100, args=0x7ffff6ba5758, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #32 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff7309af0, args=0x7ffff6ba46e0, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #33 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #34 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7080, arg=0x7ffff7fb7200, args=0x7ffff6ba5730, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #35 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba46c0, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #36 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #37 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7180, arg=0x7ffff7fb7100, args=0x7ffff6ba5708, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #38 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff7309af0, args=0x7ffff6ba46a0, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #39 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #40 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7080, arg=0x7ffff7fb7200, args=0x7ffff6ba56e0, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #41 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba4680, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #42 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #43 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7180, arg=0x7ffff7fb7100, args=0x7ffff6ba56b8, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #44 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff7309af0, args=0x7ffff6ba4660, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #45 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 #46 0x0000000000c4c375 in convert_template_argument (parm=0x7ffff7fb7080, arg=0x7ffff7fb7200, args=0x7ffff6ba5690, complain=0, i=1, in_decl=0x0) at ../../gcc/cp/pt.cc:8653 #47 0x0000000000c4e294 in coerce_template_parms (parms=0x7ffff73097f8, args=0x7ffff6ba4640, in_decl=0x0, complain=0, require_all_args=true) at ../../gcc/tree.h:3613 #48 0x0000000000c74bdb in coerce_template_template_parms (parm_tmpl=<optimized out>, arg_tmpl=<optimized out>, complain=0, in_decl=0x0, outer_args=<optimized out>) at ../../gcc/cp/pt.cc:8211 ``` Confirmed. Looks like an infinite loop between coerce_template_parms and coerce_template_template_parms here.