https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91640
Bug ID: 91640 Summary: [9/10 Regression] ICE: gimplification failed (contiguous expr) Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Changed between 20190113 and 20190120. For reference a z0_verify.f90 : program p real :: z(3) = 1.0 print *, is_contiguous(z) print *, is_contiguous(-z) print *, is_contiguous(2.0*z) end $ gfortran-10-20190901 z0_verify.f90 && ./a.out T T T Test cases : $ cat z1.f90 program p real :: z(3) = 1.0 call sub (-z) contains subroutine sub (x) real, contiguous :: x(:) end end $ cat z2.f90 program p real :: z(3) = 1.0 call sub (2.0*z) contains subroutine sub (x) real, contiguous :: x(:) end end $ gfortran-9-20190113 -c z1.f90 $ $ gfortran-10-20190901 -c z1.f90 gimplification failed: -_7 <negate_expr 0x7fcd72b2cde0 type <real_type 0x7fcd729992a0 real(kind=4) sizes-gimplified SF size <integer_cst 0x7fcd7297dde0 constant 32> unit-size <integer_cst 0x7fcd7297ddf8 constant 4> align:32 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fcd729992a0 precision:32 pointer_to_this <pointer_type 0x7fcd729997e0>> arg:0 <ssa_name 0x7fcd72984900 type <real_type 0x7fcd729992a0 real(kind=4)> def_stmt _7 = z[_6]; version:7> z1.f90:3:0 start: z1.f90:3:0 finish: z1.f90:3:0> z1.f90:3:0: 3 | call sub (-z) | internal compiler error: gimplification failed 0x9f6051 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.c:14144 0xa08c28 gimplify_modify_expr ../../gcc/gimplify.c:5747 0x9f5b0a gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.c:13135 0x9f8d98 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.c:6779 0x9f4c0b gimplify_statement_list ../../gcc/gimplify.c:1849 0x9f4c0b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.c:13579 0x9f8d98 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.c:6779 0x9f54ec gimplify_and_add(tree_node*, gimple**) ../../gcc/gimplify.c:480 0x9f54ec gimplify_loop_expr ../../gcc/gimplify.c:1823 0x9f54ec gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.c:13340 0x9f8d98 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.c:6779 0x9f4c0b gimplify_statement_list ../../gcc/gimplify.c:1849 0x9f4c0b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.c:13579 0x9f8d98 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.c:6779 0x9f9f03 gimplify_bind_expr ../../gcc/gimplify.c:1417 0x9f4e42 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.c:13336 0x9f8d98 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.c:6779 0x9f4c0b gimplify_statement_list ../../gcc/gimplify.c:1849 0x9f4c0b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gimplify.c:13579 0x9f8d98 gimplify_stmt(tree_node**, gimple**) ../../gcc/gimplify.c:6779