https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79335
Martin Liška <marxin at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |NEW --- Comment #4 from Martin Liška <marxin at gcc dot gnu.org> --- I see, now P4 makes sense for me. It's easy to find out why it uses uninitialized value: generate_coarray_sym_init contains: symbol_attribute attr; then in the function we do not assign to attr and at line 5132 we call: desc = gfc_conv_scalar_to_descriptor (&se, decl, attr); which immediately at the beginning calls: type = get_scalar_to_descriptor_type (scalar, attr); and the function does the invalid use: │48 static tree │49 get_scalar_to_descriptor_type (tree scalar, symbol_attribute attr) │50 { │51 enum gfc_array_kind akind; │52 >│53 if (attr.pointer) │54 akind = GFC_ARRAY_POINTER_CONT;