blob: 0bc8cd318a74d18df11c3e46062fb3ca62bd6363 [file] [edit]
! RUN: %python %S/../test_errors.py %s %flang_fc1 -fopenmp
! Types for built in reductions must have types which are valid for the
! initialization and combiner expressions in the spec. This implies assumed
! rank and assumed size cannot be used.
subroutine assumedRank1(a)
integer :: a(..)
! ERROR: The type of 'a' is incompatible with the reduction operator.
!$omp parallel reduction(+:a)
!$omp end parallel
end
subroutine assumedRank2(a)
integer :: a(..)
! ERROR: The type of 'a' is incompatible with the reduction operator.
!$omp parallel reduction(min:a)
!$omp end parallel
end
subroutine assumedRank3(a)
integer :: a(..)
! ERROR: The type of 'a' is incompatible with the reduction operator.
!$omp parallel reduction(iand:a)
!$omp end parallel
end
subroutine assumedSize1(a)
integer :: a(*)
! ERROR: Whole assumed-size array 'a' may not appear here without subscripts
!$omp parallel reduction(+:a)
!$omp end parallel
end
subroutine assumedSize2(a)
integer :: a(*)
! ERROR: Whole assumed-size array 'a' may not appear here without subscripts
!$omp parallel reduction(max:a)
!$omp end parallel
end
subroutine assumedSize3(a)
integer :: a(*)
! ERROR: Whole assumed-size array 'a' may not appear here without subscripts
!$omp parallel reduction(ior:a)
!$omp end parallel
end