llvm-project/flang/test/Semantics/omp-taskloop03.f90
Praveen G 956a84da06 [flang] [OpenMP 4.5] Adding lit test cases for OpenMP Constructs.
1. Section 2.5   : Parallel Construct
 2. Section 2.7.1 : Loop Construct
 3. Section 2.7.2 : Sections Construct
 4. Section 2.7.3 : Single Construct
 5. Section 2.7.4 : Workshare Construct
 6. Section 2.8.1 : Simd Construct
 7. Section 2.8.3 : Loop Simd Construct
 8. Section 2.9.1 : Task Construct
 9. Section 2.9.2 : Taskloop Construct
10. Section 2.9.3 : Taskloop Simd Construct

Most of the test cases added as part of this change contains semantic errors except few cases which are semantically correct but thrown a semantic error.

Currently flang is not throwing the errors for these cases and throwing semantic errors for the following correct test cases

{omp-do03.f90 , omp-loop-simd01.f90 , omp-simd02.f90 , omp-taskloop01.f90}

Hence, all the test cases are marked as XFAIL.

Reviewed By: DavidTruby

Differential Revision: https://reviews.llvm.org/D87908
2020-09-24 13:09:20 +01:00

26 lines
616 B
Fortran

! RUN: %S/test_errors.sh %s %t %f18 -fopenmp
! XFAIL: *
! OpenMP Version 4.5
! 2.9.2 taskloop Construct
! All loops associated with the taskloop construct must be perfectly nested,
! there must be no intervening code or any OpenMP directive between
! any two loops
program omp_taskloop
integer i, j
!$omp taskloop private(j) grainsize(500) nogroup
do i=1, 10000
do j=1, i
call loop_body(i, j)
end do
!ERROR: Loops associated with !$omp taskloop is not perfectly nested
!$omp single
print *, "omp single"
!$omp end single
end do
!$omp end taskloop
end program omp_taskloop