https://gcc.gnu.org/g:1535de1cf7c7d6afe5074f4a39049d8bd0e7e3bd
commit 1535de1cf7c7d6afe5074f4a39049d8bd0e7e3bd Author: Mikael Morin <mik...@gcc.gnu.org> Date: Fri Jun 6 13:16:33 2025 +0200 Correction partielle régression reduce_1 Diff: --- libgfortran/intrinsics/reduce.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libgfortran/intrinsics/reduce.c b/libgfortran/intrinsics/reduce.c index a475813792db..8e1ab3b8c2f7 100644 --- a/libgfortran/intrinsics/reduce.c +++ b/libgfortran/intrinsics/reduce.c @@ -160,7 +160,7 @@ reduce (parray *ret, { off = idx0 * spc0 + idx2 * spc2; if (mask_present) - maskR = *(mask->base_addr + (size_t) off); + maskR = *((GFC_LOGICAL_4 *) (((char*)mask->base_addr) + (size_t) off)); started = (mask_present && maskR) || !mask_present; @@ -175,7 +175,7 @@ reduce (parray *ret, first element in the reduction. */ off = idx0 * spc0 + idx1 * spc1 + idx2 * spc2; if (mask_present) - maskR = *(mask->base_addr + (size_t) off); + maskR = *((GFC_LOGICAL_4 *) (((char*)mask->base_addr) + (size_t) off)); array_ptr = array->base_addr + (size_t)(idx0 * spc0 + idx1 * spc1 + idx2 * spc2);