https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93576
Martin Sebor changed:
What|Removed |Added
Keywords||ice-on-invalid-code
Status|UNCONFIRMED |NEW
Last reconfirmed||2020-02-04
CC||msebor at gcc dot gnu.org
Component|c |middle-end
Summary|internal compiler error:|[10 Regression] internal
|Segmentation fault (in |compiler error:
|gimplify.c) |Segmentation fault (in
||gimplify.c)
Ever confirmed|0 |1
--- Comment #1 from Martin Sebor ---
Confirmed. Please include the compiler options and its output in bug reports
(see What We Need in https://gcc.gnu.org/bugs).
$ gcc -S -Wall pr92576.c
pr92576.c: In function ‘main’:
pr92576.c:1:34: error: ‘e’ undeclared (first use in this function)
1 | int main ( ) { int x [ ] = { 1 , e } ;
| ^
pr92576.c:1:34: note: each undeclared identifier is reported only once for each
function it appears in
pr92576.c:2:24: error: ‘p’ undeclared (first use in this function)
2 | return x [ ( ( char ) p % ( sizeof ( 0 ) < main ) >= ( ( ( char * ( *
( * (
|^
pr92576.c:2:15: warning: cast from pointer to integer of different size
[-Wpointer-to-int-cast]
2 | return x [ ( ( char ) p % ( sizeof ( 0 ) < main ) >= ( ( ( char * ( *
( * (
| ^
pr92576.c:2:43: warning: comparison between pointer and integer
2 | return x [ ( ( char ) p % ( sizeof ( 0 ) < main ) >= ( ( ( char * ( *
( * (
| ^
pr92576.c:3:14: warning: ‘struct list’ declared inside parameter list will not
be visible outside of this definition or declaration
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^~~~
pr92576.c:3:45: warning: the address of ‘x’ will always evaluate as ‘true’
[-Waddress]
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^
pr92576.c:4:5: warning: left-hand operand of comma expression has no effect
[-Wunused-value]
4 | ( 1 , 2 ) / 2 != 7 , 2 ) ) ) ) ] ) [ * * main ] ) p + 4 ) >= & x [ 12 ]
) ) ] ;
| ^
pr92576.c:4:20: warning: left-hand operand of comma expression has no effect
[-Wunused-value]
4 | ( 1 , 2 ) / 2 != 7 , 2 ) ) ) ) ] ) [ * * main ] ) p + 4 ) >= & x [ 12 ]
) ) ] ;
|^
pr92576.c:3:56: warning: left-hand operand of comma expression has no effect
[-Wunused-value]
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
|^
pr92576.c:3:49: warning: logical not is only applied to the left hand side of
comparison [-Wlogical-not-parentheses]
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^~
pr92576.c:3:45: note: add parentheses around left hand side expression to
silence this warning
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^~~
| ( )
pr92576.c:3:43: warning: left-hand operand of comma expression has no effect
[-Wunused-value]
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^
pr92576.c:3:33: warning: left-hand operand of comma expression has no effect
[-Wunused-value]
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^
pr92576.c:3:14: error: size of unnamed array has non-integer type
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^~~~
pr92576.c:2:59: error: cast specifies function type
2 | return x [ ( ( char ) p % ( sizeof ( 0 ) < main ) >= ( ( ( char * ( *
( * (
| ^
pr92576.c:3:14: internal compiler error: Segmentation fault
3 | int ( struct list ) ) ) [ ! ( 1 , 2 * ( 3 , ! x != ( 1 , sizeof ( char
* ) < (
| ^~~~
0x12d1642 crash_signal
/src/gcc/trunk/gcc/toplev.c:328
0xe0bdd7 gimplify_compound_expr
/src/gcc/trunk/gcc/gimplify.c:6021
0xe0bdf7 gimplify_compound_expr
/src/gcc/trunk/gcc/gimplify.c:6022
0xe3402e gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
/src/gcc/trunk/gcc/gimplify.c:13571
0xe380cb gimplify_expr