[Bug fortran/82077] New: [7.1 Regression]: ICE on associating polymorphic array dummy with a type-guarded array section
damian at sourceryinstitute dot org
gcc-bugzilla@gcc.gnu.org
Fri Sep 1 18:05:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82077
Bug ID: 82077
Summary: [7.1 Regression]: ICE on associating polymorphic array
dummy with a type-guarded array section
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: damian at sourceryinstitute dot org
Target Milestone: ---
$ cat poly-array-section-arg.f90
!! Gfortran 7.1.0 and 8.0.0 20170731 report an ICE when a
!! polymorphic 1D array dummy argument of a child type is
!! associated with a type-guarded, 1D section of a 2D
!! polymorphic array actual argument declared as the parent
!! type. Gfortran 5.4.0 and 6.4.0 compile the code without
!! reporting any errors.
type parent
end type parent
type, extends(parent) :: child
end type
class(parent), allocatable :: foo(:,:)
allocate(child::foo(1,1))
select type(foo)
class is (child)
call gfortran7_ICE(foo(1,:))
end select
contains
subroutine gfortran7_ICE(bar)
class(child) bar(:)
end subroutine
end
$ gfortran --version
GNU Fortran (GCC) 8.0.0 20170731 (experimental)
$ gfortran poly-array-section-arg.f90
poly-array-section-arg.f90:15:0:
call gfortran7_ICE(foo(1,:))
internal compiler error: Segmentation fault
0xd933ef crash_signal
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/toplev.c:338
0x91d09d gfc_conv_scalarized_array_ref
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-array.c:3228
0x91e284 gfc_conv_array_ref(gfc_se*, gfc_array_ref*, gfc_expr*, locus*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-array.c:3382
0x94fa1d gfc_conv_variable
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-expr.c:2680
0x94beea gfc_conv_expr(gfc_se*, gfc_expr*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-expr.c:7816
0x92b7b6 gfc_conv_expr_descriptor(gfc_se*, gfc_expr*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-array.c:7138
0x948348 gfc_conv_procedure_call(gfc_se*, gfc_symbol*, gfc_actual_arglist*,
gfc_expr*, vec<tree_node*, va_gc, vl_embed>*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-expr.c:5319
0x987b7a gfc_trans_call(gfc_code*, bool, tree_node*, tree_node*, bool)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-stmt.c:406
0x9142e5 trans_code
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans.c:1885
0x98c188 gfc_trans_block_construct(gfc_code*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-stmt.c:1934
0x914097 trans_code
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans.c:1913
0x984643 gfc_trans_if_1
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-stmt.c:1434
0x98bc1a gfc_trans_if(gfc_code*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-stmt.c:1465
0x914107 trans_code
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans.c:1905
0x98e53d gfc_trans_select_type_cases
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-stmt.c:2532
0x98e53d gfc_trans_select_type(gfc_code*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-stmt.c:3242
0x914007 trans_code
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans.c:1933
0x98c188 gfc_trans_block_construct(gfc_code*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-stmt.c:1934
0x914097 trans_code
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans.c:1913
0x93dc68 gfc_generate_function_code(gfc_namespace*)
/home/rouson/Desktop/Builds/opencoarrays/prerequisites/downloads/gcc-teams/gcc/fortran/trans-decl.c:6365
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.
More information about the Gcc-bugs
mailing list