https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84984
Bug ID: 84984
Summary: internal compiler error: in build2, at tree.c:4686
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:
int a;
b(decltype(&a - __builtin_constant_p(0 ?: throw 0) ?: auto));
Output:
$ cc1plus
<stdin>:2:60: error: invalid use of 'void'
<stdin>:2:33: internal compiler error: in build2, at tree.c:4686
0x4025a2b build2(tree_code, tree_node*, tree_node*, tree_node*)
/home/vegard/git/gcc/gcc/tree.c:4685
0x1f9ab52 build2_loc
/home/vegard/git/gcc/gcc/tree.h:4112
0x1f9ab52 fold_build2_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
/home/vegard/git/gcc/gcc/fold-const.c:12330
0x1f9ab52 fold_build_pointer_plus_loc(unsigned int, tree_node*, tree_node*)
/home/vegard/git/gcc/gcc/fold-const.c:14542
0x10f1df4 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/home/vegard/git/gcc/gcc/cp/pt.c:17557
0xa5796a fold_non_dependent_expr(tree_node*)
/home/vegard/git/gcc/gcc/cp/constexpr.c:5102
0x105112f build_non_dependent_expr(tree_node*)
/home/vegard/git/gcc/gcc/cp/pt.c:25305
0x13959af build_x_conditional_expr(unsigned int, tree_node*, tree_node*,
tree_node*, int)
/home/vegard/git/gcc/gcc/cp/typeck.c:6559
0xecbaa8 cp_parser_question_colon_clause
/home/vegard/git/gcc/gcc/cp/parser.c:9456
0xec682e cp_parser_assignment_expression
/home/vegard/git/gcc/gcc/cp/parser.c:9492
0xec87ea cp_parser_expression
/home/vegard/git/gcc/gcc/cp/parser.c:9655
0xf3478f cp_parser_primary_expression
/home/vegard/git/gcc/gcc/cp/parser.c:5206
0xf7698b cp_parser_postfix_expression
/home/vegard/git/gcc/gcc/cp/parser.c:7030
0xf7ae79 cp_parser_decltype_expr
/home/vegard/git/gcc/gcc/cp/parser.c:14037
0xf7ae79 cp_parser_decltype
/home/vegard/git/gcc/gcc/cp/parser.c:14135
0xf2db37 cp_parser_simple_type_specifier
/home/vegard/git/gcc/gcc/cp/parser.c:17065
0xf22abd cp_parser_type_specifier
/home/vegard/git/gcc/gcc/cp/parser.c:16852
0xf8858a cp_parser_decl_specifier_seq
/home/vegard/git/gcc/gcc/cp/parser.c:13629
0xfb6b9d cp_parser_parameter_declaration
/home/vegard/git/gcc/gcc/cp/parser.c:21506
0xfb94ea cp_parser_parameter_declaration_list
/home/vegard/git/gcc/gcc/cp/parser.c:21318
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)