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

            Bug ID: 93285
           Summary: [10 Regression] ICE in cp_gimplify_expr, at
                    cp/cp-gimplify.c:931 since g:08f594eb399dab06
           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: marxin at gcc dot gnu.org
                CC: jason at gcc dot gnu.org
  Target Milestone: ---

I see the following ICE:

$ cat cpu.ii
struct A {
  using btype = bool;
  template <typename T> A(T);
  btype data;
};
using boolean = A;
struct B {
  auto m_fn1() -> void;
  struct {
    boolean nmiValid = 0;
  } status;
};
auto B::m_fn1() -> void { status = {}; }

$ g++ -fmax-errors=1 -std=c++17 cpu.ii -c
cpu.ii: In member function ‘void B::m_fn1()’:
cpu.ii:13:34: internal compiler error: in cp_gimplify_expr, at
cp/cp-gimplify.c:933
   13 | auto B::m_fn1() -> void { status = {}; }
      |                           ~~~~~~~^~~~
0xa4038b cp_gimplify_expr(tree_node**, gimple**, gimple**)
        /home/marxin/Programming/gcc/gcc/cp/cp-gimplify.c:933
0x113932b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13490
0x110f081 gimplify_init_ctor_preeval
        /home/marxin/Programming/gcc/gcc/gimplify.c:4510
0x110f04f gimplify_init_ctor_preeval
        /home/marxin/Programming/gcc/gcc/gimplify.c:4496
0x1110a3f gimplify_init_constructor
        /home/marxin/Programming/gcc/gcc/gimplify.c:5082
0x1111681 gimplify_modify_expr_rhs
        /home/marxin/Programming/gcc/gcc/gimplify.c:5369
0x11127cb gimplify_modify_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:5720
0x11396d8 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13581
0x1116cc1 gimplify_stmt(tree_node**, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:6822
0x11161f5 gimplify_cleanup_point_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:6564
0x113b165 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13973
0x1116cc1 gimplify_stmt(tree_node**, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:6822
0x113e105 gimplify_body(tree_node*, bool)
        /home/marxin/Programming/gcc/gcc/gimplify.c:14830
0x113e8f6 gimplify_function_tree(tree_node*)
        /home/marxin/Programming/gcc/gcc/gimplify.c:14974
0xec24e7 cgraph_node::analyze()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:669
0xec43fc analyze_functions
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:1210
0xec961d symbol_table::finalize_compilation_unit()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2956
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Reply via email to