https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94040
Bug ID: 94040
Summary: [10 Regression] ICE in get_constant, at
c-family/c-format.c:325 (error: 'format' attribute
argument 2 value '3' refers to parameter type 'int *')
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
Target Milestone: ---
gcc-10.0.1-alpha20200301 snapshot (g:151bf47e78f5d919f6cc591d11cc1f6aff61078f)
ICEs when compiling the following testcase w/ -m32 -Wformat:
int
strftime (char *, int, int *, void *);
int
li (void)
{
return strftime (0, 0, 0, 0);
}
% gcc-10.0.1 -m32 -Wformat -w -c yjslsqig.c
yjslsqig.c: In function 'li':
yjslsqig.c:7:3: error: 'format' attribute argument 2 value '3' refers to
parameter type 'int *'
7 | return strftime (0, 0, 0, 0);
| ^~~~~~
yjslsqig.c:7:3: internal compiler error: in get_constant, at
c-family/c-format.c:325
0x5de063 get_constant
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c-family/c-format.c:325
0x5de063 get_constant
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c-family/c-format.c:313
0x8652f0 decode_format_attr
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c-family/c-format.c:377
0x8680d8 check_function_format(tree_node const*, tree_node*, int, tree_node**,
vec<unsigned int, va_heap, vl_ptr>*)
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c-family/c-format.c:1183
0x856b48 check_function_arguments(unsigned int, tree_node const*, tree_node
const*, int, tree_node**, vec<unsigned int, va_heap, vl_ptr>*)
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c-family/c-common.c:5726
0x7e3dc7 build_function_call_vec(unsigned int, vec<unsigned int, va_heap,
vl_ptr>, tree_node*, vec<tree_node*, va_gc, vl_embed>*, vec<tree_node*, va_gc,
vl_embed>*, tree_node*)
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-typeck.c:3116
0x803f36 c_parser_postfix_expression_after_primary
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:10494
0x7fb409 c_parser_postfix_expression
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:10169
0x7ff89a c_parser_unary_expression
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:8266
0x8011a7 c_parser_cast_expression
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:8108
0x801477 c_parser_binary_expression
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:7911
0x8025c8 c_parser_conditional_expression
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:7645
0x802cb2 c_parser_expr_no_commas
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:7562
0x802f55 c_parser_expression
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:10630
0x8037cb c_parser_expression_conv
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:10663
0x7f96a4 c_parser_statement_after_labels
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:6205
0x7fabd0 c_parser_compound_statement_nostart
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:5800
0x818ac8 c_parser_compound_statement
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:5616
0x81a71e c_parser_declaration_or_fndef
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:2504
0x822e73 c_parser_external_declaration
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200301/work/gcc-10-20200301/gcc/c/c-parser.c:1746