https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94221
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Known to fail| |10.0 Status|UNCONFIRMED |NEW Last reconfirmed| |2020-03-19 Ever confirmed|0 |1 Keywords| |wrong-code --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- test2 lacks a return stmt and initialization of the return value: test2 () { { struct __st_parameter_dt dt_parm.0; dt_parm.0.common.filename = &"t.f90"[1]{lb: 1 sz: 1}; dt_parm.0.common.line = 15; dt_parm.0.common.flags = 128; dt_parm.0.common.unit = 6; _gfortran_st_write (&dt_parm.0); _gfortran_transfer_character_write (&dt_parm.0, &"running test - here test%val is not initialized"[1]{lb: 1 sz: 1}, 47); _gfortran_st_write_done (&dt_parm.0); } } but the caller still expects one: a = test (); indeed a frontend issue.