| ! { dg-do run } | |
| module m | |
| integer a | |
| end module m | |
| program main | |
| use omp_lib | |
| use m | |
| implicit none | |
| !$omp task final (.true.) | |
| if (.not. omp_in_final ()) & | |
| error stop | |
| !$omp task | |
| if (.not. omp_in_final ()) & | |
| error stop | |
| !$omp taskgroup task_reduction (+: a) | |
| if (.not. omp_in_final ()) & | |
| error stop | |
| !$omp task in_reduction (+: a) | |
| a = a + 1 | |
| if (.not. omp_in_final ()) & | |
| error stop | |
| !$omp end task | |
| !$omp end taskgroup | |
| if (.not. omp_in_final ()) & | |
| error stop | |
| !$omp taskwait | |
| !$omp end task | |
| !$omp end task | |
| end |