https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56423
--- Comment #4 from anlauf at gcc dot gnu.org --- (In reply to Thomas Koenig from comment #3) > > $ cat z2.f90 > > program p > > integer, target :: x(3) = [7, 8, 9] > > type t > > integer, pointer :: a(:) > > end type > > type(t) :: z > > z = t(x(2)) > > print *, z%a > > end > > > > > > This now gives Somehow your comment got truncated... I get here with 15-HEAD: pr56423-z2.f90:7:14: 7 | z = t(x(2)) | 1 internal compiler error: in walk_coarray, at fortran/trans-array.cc:8000 0x3530e39 internal_error(char const*, ...) ../../gcc-trunk/gcc/diagnostic-global-context.cc:517 0x3516db9 fancy_abort(char const*, int, char const*) ../../gcc-trunk/gcc/diagnostic.cc:1722 0xe1f1a0 walk_coarray ../../gcc-trunk/gcc/fortran/trans-array.cc:8000 0xe1f1a0 gfc_conv_expr_descriptor(gfc_se*, gfc_expr*) ../../gcc-trunk/gcc/fortran/trans-array.cc:8105 0xe706a9 gfc_trans_subcomponent_assign ../../gcc-trunk/gcc/fortran/trans-expr.cc:9786 0xe72151 gfc_trans_structure_assign(tree_node*, gfc_expr*, bool, bool) ../../gcc-trunk/gcc/fortran/trans-expr.cc:10171 0xe724d9 gfc_conv_structure(gfc_se*, gfc_expr*, int) ../../gcc-trunk/gcc/fortran/trans-expr.cc:10237 0xe72cce gfc_conv_expr(gfc_se*, gfc_expr*) ../../gcc-trunk/gcc/fortran/trans-expr.cc:10405 0xe7baf0 gfc_trans_assignment_1 ../../gcc-trunk/gcc/fortran/trans-expr.cc:12988 0xe7cfdb gfc_trans_assignment(gfc_expr*, gfc_expr*, bool, bool, bool, bool) ../../gcc-trunk/gcc/fortran/trans-expr.cc:13395 0xe7d054 gfc_trans_assign(gfc_code*) ../../gcc-trunk/gcc/fortran/trans-expr.cc:13408 0xe02757 trans_code ../../gcc-trunk/gcc/fortran/trans.cc:2338 0xe49c54 gfc_generate_function_code(gfc_namespace*) ../../gcc-trunk/gcc/fortran/trans-decl.cc:8078 0xd85d0d translate_all_program_units ../../gcc-trunk/gcc/fortran/parse.cc:7438 0xd8661f gfc_parse_file() ../../gcc-trunk/gcc/fortran/parse.cc:7755 0xdef78a gfc_be_parse_file ../../gcc-trunk/gcc/fortran/f95-lang.cc:241