https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85002
--- Comment #4 from G. Steinmetz <gs...@t-online.de> --- Update, ICEs also with a scalar component "a" : $ cat z2.f90 program p type t integer, allocatable :: a end type type t2 type(t), allocatable :: b(:) end type type(t) :: x type(t2) :: y(2)[*] allocate (x%a) x%a = 123 y = t2([x]) end $ gfortran-10-20191215 -c z2.f90 -fcoarray=single z2.f90:12:0: 12 | y = t2([x]) | internal compiler error: Segmentation fault 0xb8147f crash_signal ../../gcc/toplev.c:328 0x8c43d3 fold_ternary_loc(unsigned int, tree_code, tree_node*, tree_node*, tree_node*, tree_node*) ../../gcc/fold-const.c:11908 0x8c5fb3 fold_build3_loc(unsigned int, tree_code, tree_node*, tree_node*, tree_node*, tree_node*) ../../gcc/fold-const.c:12943 0x6ea9ed structure_alloc_comps ../../gcc/fortran/trans-array.c:9257 0x6eafbe structure_alloc_comps ../../gcc/fortran/trans-array.c:8692 0x6ec87f structure_alloc_comps ../../gcc/fortran/trans-array.c:9361 0x6eef63 gfc_copy_alloc_comp(gfc_symbol*, tree_node*, tree_node*, int, int) ../../gcc/fortran/trans-array.c:9812 0x705d1b gfc_trans_scalar_assign(gfc_se*, gfc_se*, gfc_typespec, bool, bool, bool) ../../gcc/fortran/trans-expr.c:9685 0x7170cd gfc_trans_assignment_1 ../../gcc/fortran/trans-expr.c:11051 0x6d6b97 trans_code ../../gcc/fortran/trans.c:1864 0x700124 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6801 0x6891b6 translate_all_program_units ../../gcc/fortran/parse.c:6302 0x6891b6 gfc_parse_file() ../../gcc/fortran/parse.c:6541 0x6d365f gfc_be_parse_file ../../gcc/fortran/f95-lang.c:210