! RUN: %python %S/../test_errors.py %s %flang -fopenmp ! OpenMP Version 5.0 ! 2.17.1 critical construct ! If the hint clause is specified, the critical construct must have a name. program sample use omp_lib integer i, j !ERROR: Hint clause other than omp_sync_hint_none cannot be specified for an unnamed CRITICAL directive !$omp critical hint(omp_lock_hint_speculative) j = j + 1 !$omp end critical !$omp critical (foo) hint(omp_lock_hint_speculative) i = i - 1 !$omp end critical (foo) !ERROR: Hint clause other than omp_sync_hint_none cannot be specified for an unnamed CRITICAL directive !$omp critical hint(omp_lock_hint_nonspeculative) j = j + 1 !$omp end critical !$omp critical (foo) hint(omp_lock_hint_nonspeculative) i = i - 1 !$omp end critical (foo) !ERROR: Hint clause other than omp_sync_hint_none cannot be specified for an unnamed CRITICAL directive !$omp critical hint(omp_lock_hint_contended) j = j + 1 !$omp end critical !$omp critical (foo) hint(omp_lock_hint_contended) i = i - 1 !$omp end critical (foo) !ERROR: Hint clause other than omp_sync_hint_none cannot be specified for an unnamed CRITICAL directive !$omp critical hint(omp_lock_hint_uncontended) j = j + 1 !$omp end critical !$omp critical (foo) hint(omp_lock_hint_uncontended) i = i - 1 !$omp end critical (foo) !$omp critical hint(omp_sync_hint_none) j = j + 1 !$omp end critical !$omp critical (foo) hint(omp_sync_hint_none) i = i - 1 !$omp end critical (foo) end program sample