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

            Bug ID: 100634
           Summary: [11/12 Regression] ICE in convert_nontype_argument, at
                    cp/pt.c:7653
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

g++-12.0.0-alpha20210516 snapshot (g:4a322345cab10879162a2ddf659fb0f873ba0182)
ICEs when compiling the following testcase, extracted from
test/SemaTemplate/temp_arg_nontype_cxx20.cpp from the clang 12.0.0 test suite,
w/ -std=gnu++20:

template<_Complex int> struct ComplexInt {};
using CI = ComplexInt<1 + 3i>;

% g++-12.0.0 -std=gnu++20 -c xqj500ey.cpp
xqj500ey.cpp:2:29: internal compiler error: in convert_nontype_argument, at
cp/pt.c:7653
    2 | using CI = ComplexInt<1 + 3i>;
      |                             ^
0x6b6b34 convert_nontype_argument
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/pt.c:7653
0x6b6b34 convert_template_argument
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/pt.c:8546
0xacd2c3 coerce_template_parms
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/pt.c:9025
0xad0069 lookup_template_class_1
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/pt.c:9863
0xad1e31 lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*,
int, int)
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/pt.c:10250
0xafb7fb finish_template_type(tree_node*, tree_node*, int)
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/semantics.c:3585
0xa6a1e9 cp_parser_template_id
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:17503
0xa6a3e5 cp_parser_class_name
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:24749
0xa6156a cp_parser_qualifying_entity
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:7002
0xa6156a cp_parser_nested_name_specifier_opt
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:6684
0xa7760b cp_parser_simple_type_specifier
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:18904
0xa554a5 cp_parser_type_specifier
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:18563
0xa67ae4 cp_parser_type_specifier_seq
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:23424
0xa66098 cp_parser_type_id_1
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:23224
0xa6841d cp_parser_type_id
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:23320
0xa6841d cp_parser_alias_declaration
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:20890
0xa853e5 cp_parser_declaration
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:14161
0xa86160 cp_parser_toplevel_declaration
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:14190
0xa86160 cp_parser_translation_unit
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:4942
0xa86160 c_parse_file()
       
/var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210516/work/gcc-12-20210516/gcc/cp/parser.c:45393

Reply via email to