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

            Bug ID: 98469
           Summary: ICE in cxx_eval_constant_expression, at
                    cp/constexpr.c:6350
           Product: gcc
           Version: 11.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++-11.0.0-alpha20201227 snapshot (g:9a48892bea70a1e6a82e24b882f22807b73debe7)
ICEs when compiling the following testcase, reduced from
test/CodeGenCXX/builtin-bit-cast.cpp from the clang 11.0.0 test suite, w/
-Wall:

struct ze {
  int cd;
};

ze
uu ()
{
  return __builtin_bit_cast (ze, 0);
}

% g++-11.0.0 -Wall -c czlmwkjs.cpp
czlmwkjs.cpp: In function 'ze uu()':
czlmwkjs.cpp:8:35: internal compiler error: in cxx_eval_constant_expression, at
cp/constexpr.c:6350
    8 |   return __builtin_bit_cast (ze, 0);
      |                                   ^
0x6275ff cxx_eval_constant_expression
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/constexpr.c:6350
0x906606 cxx_eval_constant_expression
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/constexpr.c:6609
0x909f46 cxx_eval_outermost_constant_expr
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/constexpr.c:7126
0x90e7cf maybe_constant_value(tree_node*, tree_node*, bool)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/constexpr.c:7397
0x9a125b fold_for_warn(tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/expr.c:416
0xb6a7f7 check_function_restrict
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/c-family/c-common.c:5497
0xb6a7f7 check_function_arguments(unsigned int, tree_node const*, tree_node
const*, int, tree_node**, vec<unsigned int, va_heap, vl_ptr>*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/c-family/c-common.c:5869
0x8d4b4a build_over_call
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:9043
0x8d2af8 build_new_method_call_1
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:10520
0x8d769b build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc,
vl_embed>**, tree_node*, int, tree_node**, int)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:10595
0x8d769b build_special_member_call(tree_node*, tree_node*, vec<tree_node*,
va_gc, vl_embed>**, tree_node*, int, int)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:9996
0x8ce8bb build_temp
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:7189
0x8ce8bb convert_like_internal
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:7734
0x8d00c9 convert_like
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:7964
0x8d00c9 perform_implicit_conversion_flags(tree_node*, tree_node*, int, int)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/call.c:12042
0xb2ae98 check_return_expr(tree_node*, bool*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/typeck.c:10310
0xadaeef finish_return_stmt(tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/semantics.c:1022
0xa418d6 cp_parser_jump_statement
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/parser.c:13470
0xa418d6 cp_parser_statement
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/parser.c:11639
0xa42f3d cp_parser_statement_seq_opt
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201227/work/gcc-11-20201227/gcc/cp/parser.c:12112

Reply via email to