http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54262
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at gcc dot gnu.org --- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-08-15 08:11:58 UTC --- >From trans-intrinsics.c's gfc_conv_intrinsic_loc: if (ss == gfc_ss_terminator) gfc_conv_expr_reference (se, arg_expr); else gfc_conv_array_parameter (se, arg_expr, ss, true, NULL, NULL, NULL); The "true" is for "bool g77" which causes the copy-in/copy-out.