https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84964
Bug ID: 84964
Summary: internal compiler error: in expand_call, at
calls.c:4540
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 oracle dot com
CC: webrown.cpp at gmail dot com
Target Milestone: ---
Input:
struct a {
short b : -1ULL;
};
void c(...) { c(a()); }
Output:
$ cc1plus
<stdin>:2:14: warning: width of 'a::b' exceeds its type
void c(...)
Analyzing compilation unit
Performing interprocedural optimizations
<*free_lang_data> <visibility> <build_ssa_passes> <opt_local_passes>
<targetclone> <free-fnsummary> <whole-program> <fnsummary> <inline>
<free-fnsummary> <single-use> <comdats>Assembling functions:
<materialize-all-clones> <simdclone> void c(...)
<stdin>: In function 'void c(...)':
<stdin>:4:16: sorry, unimplemented: passing too large argument on stack
during RTL pass: expand
<stdin>:4:16: internal compiler error: in expand_call, at calls.c:4540
0x17b719f expand_call(tree_node*, rtx_def*, int)
/home/vegard/git/gcc/gcc/calls.c:4537
0x1e78955 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
/home/vegard/git/gcc/gcc/expr.c:11002
0x181e6d4 expand_expr
/home/vegard/git/gcc/gcc/expr.h:276
0x181e6d4 expand_call_stmt
/home/vegard/git/gcc/gcc/cfgexpand.c:2690
0x181e6d4 expand_gimple_stmt_1
/home/vegard/git/gcc/gcc/cfgexpand.c:3624
0x181e6d4 expand_gimple_stmt
/home/vegard/git/gcc/gcc/cfgexpand.c:3790
0x1824c48 expand_gimple_basic_block
/home/vegard/git/gcc/gcc/cfgexpand.c:5819
0x18443d7 execute
/home/vegard/git/gcc/gcc/cfgexpand.c:6425
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)