https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84939
Bug ID: 84939
Summary: internal compiler error: in gimplify_expr, at
gimplify.c:12382
Product: gcc
Version: 8.0.1
Status: UNCONFIRMED
Keywords: ice-on-invalid-code
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: vegard.nossum at gmail dot com
CC: webrown.cpp at gmail dot com
Target Milestone: ---
Input:
struct a {
void b() {
struct c {
int d struct d e(decltype(d));
};
}
a() { (sizeof(char[static_cast<char &&>(d)])); }
} f;
Output:
$ cc1plus
void a::b()
<stdin>:4:11: error: expected ';' at end of member declaration
a::a() a::a() a::a() void __static_initialization_and_destruction_0(int, int)
void _GLOBAL__sub_I_f()
Analyzing compilation unit
<stdin>: In constructor 'a::a()':
<stdin>:7:43: internal compiler error: in gimplify_expr, at gimplify.c:12382
0x222617f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:12382
0x2219625 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11375
0x2218312 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11556
0x2238683 gimplify_compound_lval
/home/vegard/git/gcc/gcc/gimplify.c:2969
0x22191c9 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11387
0x2219625 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11375
0x227604c gimplify_modify_expr
/home/vegard/git/gcc/gcc/gimplify.c:5626
0x221b0e6 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11435
0x221b493 gimplify_target_expr
/home/vegard/git/gcc/gcc/gimplify.c:6577
0x221b493 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11815
0x2219625 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11375
0x2218f62 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:12159
0x227604c gimplify_modify_expr
/home/vegard/git/gcc/gcc/gimplify.c:5626
0x221b0e6 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11435
0x2228401 gimplify_stmt(tree_node**, gimple**)
/home/vegard/git/gcc/gcc/gimplify.c:6658
0x221a50d gimplify_cleanup_point_expr
/home/vegard/git/gcc/gcc/gimplify.c:6400
0x221a50d gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11811
0x2228401 gimplify_stmt(tree_node**, gimple**)
/home/vegard/git/gcc/gcc/gimplify.c:6658
0x221bc6b gimplify_statement_list
/home/vegard/git/gcc/gcc/gimplify.c:1767
0x221bc6b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/home/vegard/git/gcc/gcc/gimplify.c:11863
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.
Version:
GNU C++14 (GCC) version 8.0.1 20180306 (experimental) (x86_64-pc-linux-gnu)