https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90953
Bug ID: 90953
Summary: [10 Regression] ICE: tree check: expected
identifier_node, have tree_list in is_attribute_p, at
attribs.h:155 since r272486
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: marxin at gcc dot gnu.org
CC: mpolacek at gcc dot gnu.org
Target Milestone: ---
The test-case is reduced from postgresql package:
$ g++ -Wmissing-format-attribute jit.ii -c
jit.ii: In member function ‘const std::type_info& std::A<_Res(_ArgTypes
...)>::target_type() const’:
jit.ii:18:60: internal compiler error: tree check: expected identifier_node,
have tree_list in is_attribute_p, at attribs.h:155
18 | _M_manager(__typeinfo_result, _M_functor, __get_type_info);
| ^
0x7f3626 tree_check_failed(tree_node const*, char const*, int, char const*,
...)
/home/marxin/Programming/gcc/gcc/tree.c:9897
0x6a52c3 tree_check(tree_node const*, char const*, int, char const*, tree_code)
/home/marxin/Programming/gcc/gcc/tree.h:3453
0x6a52c3 is_attribute_p
/home/marxin/Programming/gcc/gcc/attribs.h:155
0x6aaf1e is_attribute_p
/home/marxin/Programming/gcc/gcc/tree.h:3320
0x6aaf1e check_missing_format_attribute(tree_node*, tree_node*)
/home/marxin/Programming/gcc/gcc/c-family/c-common.c:7604
0x8c10a7 convert_for_arg_passing(tree_node*, tree_node*, int)
/home/marxin/Programming/gcc/gcc/cp/call.c:7782
0xaa24e7 convert_arguments
/home/marxin/Programming/gcc/gcc/cp/typeck.c:4072
0xaa24e7 cp_build_function_call_vec(tree_node*, vec<tree_node*, va_gc,
vl_embed>**, int)
/home/marxin/Programming/gcc/gcc/cp/typeck.c:3904
0xa5ee05 finish_call_expr(tree_node*, vec<tree_node*, va_gc, vl_embed>**, bool,
bool, int)
/home/marxin/Programming/gcc/gcc/cp/semantics.c:2605
0x9dafdc cp_parser_postfix_expression
/home/marxin/Programming/gcc/gcc/cp/parser.c:7375
0x9e81b9 cp_parser_unary_expression
/home/marxin/Programming/gcc/gcc/cp/parser.c:8461
0x9c29cf cp_parser_cast_expression
/home/marxin/Programming/gcc/gcc/cp/parser.c:9346
0x9c31da cp_parser_binary_expression
/home/marxin/Programming/gcc/gcc/cp/parser.c:9449
0x9c4167 cp_parser_assignment_expression
/home/marxin/Programming/gcc/gcc/cp/parser.c:9747
0x9c449a cp_parser_expression
/home/marxin/Programming/gcc/gcc/cp/parser.c:9914
0x9c7845 cp_parser_expression_statement
/home/marxin/Programming/gcc/gcc/cp/parser.c:11515
0x9d2d7a cp_parser_statement
/home/marxin/Programming/gcc/gcc/cp/parser.c:11311
0x9d44b8 cp_parser_statement_seq_opt
/home/marxin/Programming/gcc/gcc/cp/parser.c:11658
0x9d4598 cp_parser_compound_statement
/home/marxin/Programming/gcc/gcc/cp/parser.c:11612
0x9ed5d5 cp_parser_function_body
/home/marxin/Programming/gcc/gcc/cp/parser.c:22636