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

            Bug ID: 93786
           Summary: [8/9/10 Regression] gimplifier ICE with statement
                    expression since r8-5526
           Product: gcc
           Version: 9.2.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
  Target Milestone: ---

struct S {virtual void v();};
void f(S * s) {
  ({ s; })->v();
}
ICEs with -O -g since r8-5526-gcb6332333854a698cbfc2ea4b1e52ce9bd59f664:
gimplification failed:
 <statement_list 0x7feef52fe820
    type <void_type 0x7feef51aef18 void VOID
        align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7feef51aef18
        pointer_to_this <pointer_type 0x7feef51b60a8>>
    head (nil) tail (nil) stmts
>
rh1803909.C: In function ‘void f(S*)’:
rh1803909.C:3:14: internal compiler error: gimplification failed
   ({ s; })->v();
   ~~~~~~~~~~~^~
0xe9db35 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:12393
0xe9bffb gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:11845
0xe771ed gimplify_call_expr
        ../../gcc/gimplify.c:3308

Doesn't ICE without -g.

Reply via email to