https://gcc.gnu.org/g:93ae6f211444a5cfe8ab3a968dd2e39b4b14301b
commit 93ae6f211444a5cfe8ab3a968dd2e39b4b14301b Author: Mikael Morin <[email protected]> Date: Mon Oct 6 21:47:27 2025 +0200 Correction régression dependency_48.f90 Diff: --- gcc/fortran/trans-decl.cc | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gcc/fortran/trans-decl.cc b/gcc/fortran/trans-decl.cc index 53e3ac284a43..ee156260a517 100644 --- a/gcc/fortran/trans-decl.cc +++ b/gcc/fortran/trans-decl.cc @@ -1317,13 +1317,14 @@ gfc_build_dummy_array_decl (gfc_symbol * sym, tree dummy) { bool bytes_strides_p = GFC_BYTES_STRIDES_ARRAY_TYPE_P (type); - if ((sym->attr.result - || (sym->attr.function && sym == sym->result)) - && gfc_return_by_reference (sym)) + if (flag_repack_arrays && !sym->attr.target) + packed = PACKED_FULL; + else if ((sym->attr.result + || (sym->attr.function && sym == sym->result)) + && gfc_return_by_reference (sym)) packed = PACKED_NO; else if (as->type == AS_ASSUMED_SIZE - || as->type == AS_EXPLICIT - || (flag_repack_arrays && !sym->attr.target)) + || as->type == AS_EXPLICIT) packed = PACKED_FULL; else packed = PACKED_NO;
