When -fopenmp is enabled, SAVE attribute causes an ICE when the entity is referenced in a FIRSTPRIVATE or LASTPRIVATE clause, e.g.:
PROGRAM p IMPLICIT NONE ! This can be SAVE :: K and gfortran will ICE too SAVE INTEGER :: K, I K = 3 ! These two can be replaced with ! !$OMP PARALLEL DO LASTPRIVATE(K) and will ICE too !$OMP PARALLEL !$OMP DO LASTPRIVATE(K) DO I = 1, 100 K = I END DO !$OMP END DO !$OMP END PARALLEL PRINT *, K END PROGRAM p -- Summary: [GOMP] ICE with SAVE attribute and (FIRST|LAST)PRIVATE Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rofi at ya dot com GCC build triplet: powerpc-unknown-linux-gnu GCC host triplet: powerpc-unknown-linux-gnu GCC target triplet: powerpc-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25219