GCC Newspaper
OCTOBER 6, 2026
Date
/
Architectures
Components
Topics
News & Policy
Other
libgfortran

libgfortran, Darwin: Disable shared memory coarrays on older macOS versions.

libgfortran Darwin: Coarray shared memory features disabled on macOS < 10.7.

The libgfortran library on Darwin has been updated to disable its shared memory coarray implementation on macOS versions prior to 10.7 (Darwin 11). This is because the implementation relies on PTHREAD_PROCESS_SHARED, which is not supported on these older systems. This change prevents the shared memory coarray features from causing testsuite noise on unsupported platforms.

In Details

libgfortran, Darwin: Update configuration for shared memory coarrays. This commit modifies libgfortran's configuration on Darwin to conditionally disable the shared memory coarray implementation. The implementation relies on PTHREAD_PROCESS_SHARED, a feature that was introduced in macOS 10.7 (Darwin 11). On earlier Darwin versions, this functionality is unavailable. To avoid issues and unnecessary testsuite failures on these older systems, the configure scripts are updated to detect the absence of PTHREAD_PROCESS_SHARED support and disable the shared memory coarray implementation accordi…

For Context
libgfortran
The runtime library for the GNU Fortran compiler (gfortran), providing support for language features, intrinsic functions, and parallel programming constructs like coarrays.
Darwin
The open-source Unix-like core of macOS, iOS, and other Apple operating systems. GCC's Darwin support targets this platform.
shared memory coarrays
A Fortran feature for parallel programming that allows multiple images (processes or threads) to communicate and share data efficiently using shared memory segments. This commit specifically addresses the implementation for the Darwin platform.
PTHREAD_PROCESS_SHARED
A flag used with POSIX threads (pthreads) that enables sharing of synchronization objects (like mutexes and condition variables) between processes. Its availability is platform and version dependent.
configure
A script generated by Autoconf that checks the build environment and system capabilities to configure the build process for a specific platform. configure.ac is the input file for Autoconf.
Filed Under: libgfortrandarwincoarrayscompatibility