! RUN: %python %S/../test_errors.py %s %flang -fopenmp -fopenmp-version=60 ! OpenMP Version 6.0 ! workdistribute Construct ! The !omp workdistribute construct must not contain any user defined ! function calls unless the function is ELEMENTAL. module my_mod contains integer function my_func() my_func = 10 end function my_func impure integer function impure_my_func() impure_my_func = 20 end function impure_my_func impure elemental integer function impure_ele_my_func() impure_ele_my_func = 20 end function impure_ele_my_func end module my_mod subroutine workdistribute(aa, bb, cc, n) use my_mod integer n real aa(n), bb(n), cc(n) !$omp teams !$omp workdistribute !ERROR: User defined non-ELEMENTAL function 'my_func' is not allowed in a WORKDISTRIBUTE construct aa = my_func() aa = bb * cc !$omp end workdistribute !$omp end teams end subroutine workdistribute