https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127136
Bug ID: 127136
Summary: internal compiler error with polymorphic spread
Product: gcc
Version: 17.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: mikael at gcc dot gnu.org
Target Milestone: ---
test:
module mod
implicit none
type :: t1
integer :: c1
end type
contains
function f(a)
class(t1), intent(in) :: a
class(t1), allocatable :: f(:)
f = spread(a, 1, 5)
end function
end module
compilation gives:
test_spread.f90:10:23:
10 | f = spread(a, 1, 5)
| 1
internal compiler error: in gfc_get_element_type, at
fortran/trans-types.cc:1465
0x26c8a2d internal_error(char const*, ...)
../../src/gcc/diagnostic-global-context.cc:787
0x978c1d fancy_abort(char const*, int, char const*)
../../src/gcc/diagnostics/context.cc:1813
0x74ed22 gfc_get_element_type(tree_node*)
../../src/gcc/fortran/trans-types.cc:1465
0xac2155 gfc_trans_create_temp_array(stmtblock_t*, stmtblock_t*, gfc_ss*,
tree_node*, tree_node*, bool, bool, bool, locus*)
../../src/gcc/fortran/trans-array.cc:1110
0xb03b44 gfc_conv_procedure_call(gfc_se*, gfc_symbol*, gfc_actual_arglist*,
gfc_expr*, vec<tree_node*, va_gc, vl_embed>*)
../../src/gcc/fortran/trans-expr.cc:9032
0xb354a0 gfc_conv_intrinsic_funcall
../../src/gcc/fortran/trans-intrinsic.cc:4026
0xad3867 gfc_add_loop_ss_code
../../src/gcc/fortran/trans-array.cc:3012
0xad48b1 gfc_conv_loop_setup(gfc_loopinfo*, locus*)
../../src/gcc/fortran/trans-array.cc:5853
0xb18b40 gfc_trans_assignment_1
../../src/gcc/fortran/trans-expr.cc:13662
0xab8347 trans_code
../../src/gcc/fortran/trans.cc:2382
0xaf2a19 gfc_generate_function_code(gfc_namespace*)
../../src/gcc/fortran/trans-decl.cc:8346
0xabdbd1 gfc_generate_module_code(gfc_namespace*)
../../src/gcc/fortran/trans.cc:2818
0xa53525 translate_all_program_units
../../src/gcc/fortran/parse.cc:7718
0xa53525 gfc_parse_file()
../../src/gcc/fortran/parse.cc:8061
0xab4e0f gfc_be_parse_file
../../src/gcc/fortran/f95-lang.cc:249
/home/mik/gcc/gccx/build/gcc/f951 test_spread.f90
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.