1! { dg-do run }
2! { dg-set-target-env-var OMP_CANCELLATION "true" }
3
4  use omp_lib
5  integer :: i
6
7  !$omp parallel
8    !$omp taskgroup
9      !$omp task
10	!$omp cancel taskgroup
11	stop 1
12      !$omp endtask
13    !$omp endtaskgroup
14  !$omp endparallel
15  !$omp parallel private (i)
16    !$omp barrier
17    !$omp single
18      !$omp taskgroup
19	do i = 0, 49
20	  !$omp task
21	    !$omp cancellation point taskgroup
22	    !$omp cancel taskgroup if (i.gt.5)
23	  !$omp end task
24	end do
25      !$omp end taskgroup
26    !$omp endsingle
27  !$omp end parallel
28end
29