1! { dg-do compile } 2 3subroutine foo () 4 !$omp parallel 5 !$omp cancel parallel if (.true.) 6 !$omp cancel parallel if (cancel: .true.) 7 8 !$omp cancel parallel if (.true.) if (.true.) ! { dg-error "Failed to match clause" } 9 !$omp cancel parallel if (cancel: .true.) if (cancel: .true.) ! { dg-error "Failed to match clause" } 10 !$omp cancel parallel if (cancel: .true.) if (.true.) ! { dg-error "IF clause without modifier at .1. used together with IF clauses with modifiers" } 11 !$omp cancel parallel if (cancel: .true.) if (parallel: .true.) ! { dg-error "IF clause modifier PARALLEL at .1. not appropriate for the current OpenMP construct" } 12 !$omp cancel parallel if (.true.) if (cancel: .true.) ! { dg-error "Failed to match clause at" } 13 !$omp cancel parallel if (parallel: .true.) if (cancel: .true.) ! { dg-error "IF clause modifier PARALLEL at .1. not appropriate for the current OpenMP construct" } 14 !$omp end parallel 15end subroutine 16