diff --git a/src/formal/divergence_operator_1D_s.F90 b/src/formal/divergence_operator_1D_s.F90 index fd0fc18..3da38d0 100644 --- a/src/formal/divergence_operator_1D_s.F90 +++ b/src/formal/divergence_operator_1D_s.F90 @@ -12,7 +12,7 @@ implicit none contains -#ifdef __GFORTRAN__ +#if !(HAVE_DO_CONCURRENT_TYPE_SPEC_SUPPORT && HAVE_LOCALITY_SPECIFIER_SUPPORT) pure function negate_and_flip(A) result(Ap) !! Transform a mimetic matrix upper block into a lower block diff --git a/src/formal/gradient_operator_1D_s.F90 b/src/formal/gradient_operator_1D_s.F90 index 0298e58..9f6ebed 100644 --- a/src/formal/gradient_operator_1D_s.F90 +++ b/src/formal/gradient_operator_1D_s.F90 @@ -13,7 +13,7 @@ contains -#ifdef __GFORTRAN__ +#if !(HAVE_DO_CONCURRENT_TYPE_SPEC_SUPPORT && HAVE_LOCALITY_SPECIFIER_SUPPORT) pure function negate_and_flip(A) result(Ap) !! Transform a mimetic matrix upper block into a lower block diff --git a/src/formal/vector_1D_s.F90 b/src/formal/vector_1D_s.F90 index 6410b31..5bd892e 100644 --- a/src/formal/vector_1D_s.F90 +++ b/src/formal/vector_1D_s.F90 @@ -150,7 +150,7 @@ pure function premultiply_diagonal(d,A) result(DA) allocate(DA, mold=A) -#ifdef HAVE_DO_CONCURRENT_TYPE_SPEC_SUPPORT && HAVE_LOCALITY_SPECIFIER_SUPPORT +#if HAVE_DO_CONCURRENT_TYPE_SPEC_SUPPORT && HAVE_LOCALITY_SPECIFIER_SUPPORT do concurrent(integer :: row = 1 : size(A,1)) default(none) shared(d, A, DA) DA(row,:) = d(row) * A(row,:) end do @@ -173,7 +173,7 @@ pure function postmultiply_diagonal(A,d) result(AD) allocate(AD, mold=A) -#ifdef HAVE_DO_CONCURRENT_TYPE_SPEC_SUPPORT && HAVE_LOCALITY_SPECIFIER_SUPPORT +#if HAVE_DO_CONCURRENT_TYPE_SPEC_SUPPORT && HAVE_LOCALITY_SPECIFIER_SUPPORT do concurrent(integer :: column = 1 : size(A,2)) default(none) shared(d, A, AD) AD(:,column) = A(:,column) * d(column) end do