https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100155
Bug ID: 100155 Summary: [9/10/11 Regression] ICE in gfc_conv_intrinsic_size, at fortran/trans-intrinsic.c:805 Product: gcc Version: 11.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 20181014 and 20181021 : (r8 changed between 20190503 and 20190614) $ cat z1.f90 program p type t end type contains recursive function f(x) result(z) class(*):: x(:) type(t) :: z(size(x)) class(t), allocatable :: a(:) class(t), allocatable :: b(:) b = f((a)) end end $ cat z2.f90 program p type t end type contains recursive function f(x) result(z) class(*):: x(:) type(t) :: z(size(x)) class(t), pointer :: a(:) class(t), allocatable :: b(:) b = f((a)) end end $ gfortran-9-20181014 -c z1.f90 $ $ gfortran-11-20210418 -c z1.f90 z1.f90:10:16: 10 | b = f((a)) | 1 internal compiler error: Segmentation fault 0xc0b22f crash_signal ../../gcc/toplev.c:327 0x77abf7 gfc_conv_intrinsic_size ../../gcc/fortran/trans-intrinsic.c:8055 0x79211b gfc_conv_intrinsic_function(gfc_se*, gfc_expr*) ../../gcc/fortran/trans-intrinsic.c:10702 0x76766a gfc_conv_expr(gfc_se*, gfc_expr*) ../../gcc/fortran/trans-expr.c:8967 0x769b0a gfc_apply_interface_mapping(gfc_interface_mapping*, gfc_se*, gfc_expr*) ../../gcc/fortran/trans-expr.c:4830 0x73c647 gfc_set_loop_bounds_from_array_spec(gfc_interface_mapping*, gfc_se*, gfc_array_spec*) ../../gcc/fortran/trans-array.c:940 0x773e5e gfc_conv_procedure_call(gfc_se*, gfc_symbol*, gfc_actual_arglist*, gfc_expr*, vec<tree_node*, va_gc, vl_embed>*) ../../gcc/fortran/trans-expr.c:7041 0x77547c gfc_trans_arrayfunc_assign ../../gcc/fortran/trans-expr.c:10441 0x778fd4 gfc_trans_assignment(gfc_expr*, gfc_expr*, bool, bool, bool, bool) ../../gcc/fortran/trans-expr.c:11610 0x739707 trans_code ../../gcc/fortran/trans.c:1932 0x75fd34 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6884 0x75fb34 gfc_generate_contained_functions ../../gcc/fortran/trans-decl.c:5878 0x75fb34 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6816 0x6e66b6 translate_all_program_units ../../gcc/fortran/parse.c:6351 0x6e66b6 gfc_parse_file() ../../gcc/fortran/parse.c:6620 0x7329cf gfc_be_parse_file ../../gcc/fortran/f95-lang.c:212