https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84676
Bug ID: 84676
Summary: internal compiler error: Segmentation fault
(build_new_op_1)
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:
int a;
void b(__attribute__((c([](int *) {} (a == (0 = auto))))));
Output:
$ xgcc -x c++ -S -
<stdin>:2:49: error: expected primary-expression before 'auto'
<stdin>:2:48: error: expected ')' before 'auto'
<stdin>:2:58: internal compiler error: Segmentation fault
0x3155789 crash_signal
/home/vegard/git/gcc/gcc/toplev.c:325
0x946278 build_new_op_1
/home/vegard/git/gcc/gcc/cp/call.c:5634
0x948c36 build_new_op(unsigned int, tree_code, int, tree_node*, tree_node*,
tree_node*, tree_node**, int)
/home/vegard/git/gcc/gcc/cp/call.c:6058
0x1395e6b build_x_binary_op(unsigned int, tree_code, tree_node*, tree_code,
tree_node*, tree_code, tree_node**, int)
/home/vegard/git/gcc/gcc/cp/typeck.c:4030
0xec7b2b cp_parser_binary_expression
/home/vegard/git/gcc/gcc/cp/parser.c:9354
0xec95aa cp_parser_assignment_expression
/home/vegard/git/gcc/gcc/cp/parser.c:9484
0xed75e4 cp_parser_parenthesized_expression_list
/home/vegard/git/gcc/gcc/cp/parser.c:7762
0xf796a6 cp_parser_postfix_expression
/home/vegard/git/gcc/gcc/cp/parser.c:7102
0xf2e057 cp_parser_unary_expression
/home/vegard/git/gcc/gcc/cp/parser.c:8320
0xec31aa cp_parser_cast_expression
/home/vegard/git/gcc/gcc/cp/parser.c:9088
0xec57d6 cp_parser_binary_expression
/home/vegard/git/gcc/gcc/cp/parser.c:9189
0xec95aa cp_parser_assignment_expression
/home/vegard/git/gcc/gcc/cp/parser.c:9484
0xed75e4 cp_parser_parenthesized_expression_list
/home/vegard/git/gcc/gcc/cp/parser.c:7762
0xeda0bb cp_parser_gnu_attribute_list
/home/vegard/git/gcc/gcc/cp/parser.c:25047
0xeda0bb cp_parser_gnu_attributes_opt
/home/vegard/git/gcc/gcc/cp/parser.c:24962
0xf8bfc7 cp_parser_decl_specifier_seq
/home/vegard/git/gcc/gcc/cp/parser.c:13429
0xfbab4d cp_parser_parameter_declaration
/home/vegard/git/gcc/gcc/cp/parser.c:21497
0xfbd49a cp_parser_parameter_declaration_list
/home/vegard/git/gcc/gcc/cp/parser.c:21309
0xfc0130 cp_parser_parameter_declaration_clause
/home/vegard/git/gcc/gcc/cp/parser.c:21230
0xf5c19f cp_parser_direct_declarator
/home/vegard/git/gcc/gcc/cp/parser.c:19983
$ xgcc --version
xgcc (GCC) 8.0.1 20180301 (experimental)
Built from git c435a9e730c6e8f10da09d58b4fc9aaeb401b0d5 (r258097).
Seems to have been introduced between 5.5.0 and 6.1.0.
Test case was minimised by C-Reduce.