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

            Bug ID: 93345
           Summary: [10 Regression] ICE in nothrow_spec_p, at
                    cp/except.c:1247
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

g++-10.0.0-alpha20200119 snapshot (g:3684bbb022cd75da55e1457673f269980aa12cdf)
ICEs when compiling the following testcase reduced from
test/CodeGenCXX/instantiate-temporaries.cpp from the clang 9.0.1 test suite:

struct ln {
  ~ln ();
};

struct ry {
  ln kj;
};

template<typename GC>
void
dz ()
{
  ry{};
}

% g++-10.0.0-alpha20200119 -c qziipxqi.cpp
qziipxqi.cpp: In function 'void dz()':
qziipxqi.cpp:13:6: internal compiler error: in nothrow_spec_p, at
cp/except.c:1247
   13 |   ry{};
      |      ^
0x61ed48 nothrow_spec_p(tree_node const*)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/except.c:1247
0x92a3e9 check_noexcept_r
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/except.c:1146
0x129d6ea walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/tree.c:11954
0x12a12aa walk_tree_without_duplicates_1(tree_node**, tree_node*
(*)(tree_node**, int*, void*), void*, tree_node* (*)(tree_node**, int*,
tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false,
default_hash_traits<tree_node*> >*))
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/tree.c:12310
0x92a09f expr_noexcept_p(tree_node*, int)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/except.c:1221
0x8e8763 cxx_maybe_build_cleanup(tree_node*, int)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/decl.c:17405
0xa46c40 build_target_expr
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/tree.c:511
0xa25f44 finish_compound_literal(tree_node*, tree_node*, int, fcl_t)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/semantics.c:2970
0x986772 cp_parser_functional_cast
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:29391
0x99ea48 cp_parser_postfix_expression
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:7134
0x9811ea cp_parser_binary_expression
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:9508
0x982dce cp_parser_assignment_expression
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:9813
0x9831a3 cp_parser_expression
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:9981
0x9861e8 cp_parser_expression_statement
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:11621
0x9915f3 cp_parser_statement
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:11417
0x992e78 cp_parser_statement_seq_opt
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:11768
0x992f58 cp_parser_compound_statement
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:11718
0x9aaa45 cp_parser_function_body
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:22948
0x9aaa45 cp_parser_ctor_initializer_opt_and_function_body
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:22999
0x9ade36 cp_parser_function_definition_after_declarator
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20200119/work/gcc-10-20200119/gcc/cp/parser.c:28821

Reply via email to