! REQUIRES: openmp_runtime ! RUN: %python %S/../test_errors.py %s %flang %openmp_flags -fopenmp-version=52 ! OpenMP Version 5.2 ! 14.1 Interop construct ! To check various semantic errors for inteorp construct. SUBROUTINE test_interop_01() USE omp_lib INTEGER(OMP_INTEROP_KIND) :: obj !ERROR: Each interop-var may be specified for at most one action-clause of each INTEROP construct. !$OMP INTEROP INIT(TARGETSYNC,TARGET: obj) USE(obj) PRINT *, 'pass' END SUBROUTINE test_interop_01 SUBROUTINE test_interop_02() USE omp_lib INTEGER(OMP_INTEROP_KIND) :: obj !ERROR: Each interop-type may be specified at most once. !$OMP INTEROP INIT(TARGETSYNC,TARGET,TARGETSYNC: obj) PRINT *, 'pass' END SUBROUTINE test_interop_02 SUBROUTINE test_interop_03() USE omp_lib INTEGER(OMP_INTEROP_KIND) :: obj !ERROR: A DEPEND clause can only appear on the directive if the interop-type includes TARGETSYNC !$OMP INTEROP INIT(TARGET: obj) DEPEND(INOUT: obj) PRINT *, 'pass' END SUBROUTINE test_interop_03