diff --git a/flang/lib/Semantics/resolve-names.cpp b/flang/lib/Semantics/resolve-names.cpp --- a/flang/lib/Semantics/resolve-names.cpp +++ b/flang/lib/Semantics/resolve-names.cpp @@ -1375,6 +1375,14 @@ static bool NeedsScope(const parser::OpenMPBlockConstruct &); + bool Pre(const parser::OpenMPRequiresConstruct &x) { + AddOmpSourceRange(x.source); + return true; + } + bool Pre(const parser::OmpSimpleStandaloneDirective &x) { + AddOmpSourceRange(x.source); + return true; + } bool Pre(const parser::OpenMPBlockConstruct &); void Post(const parser::OpenMPBlockConstruct &); bool Pre(const parser::OmpBeginBlockDirective &x) { diff --git a/flang/test/Semantics/OpenMP/barrier.f90 b/flang/test/Semantics/OpenMP/barrier.f90 new file mode 100644 --- /dev/null +++ b/flang/test/Semantics/OpenMP/barrier.f90 @@ -0,0 +1,4 @@ +! RUN: %python %S/../test_errors.py %s %flang -fopenmp + +!$omp barrier +end diff --git a/flang/test/Semantics/OpenMP/requires.f90 b/flang/test/Semantics/OpenMP/requires.f90 new file mode 100644 --- /dev/null +++ b/flang/test/Semantics/OpenMP/requires.f90 @@ -0,0 +1,4 @@ +! RUN: %python %S/../test_errors.py %s %flang -fopenmp + +!$omp requires reverse_offload +end diff --git a/flang/test/Semantics/OpenMP/taskwait.f90 b/flang/test/Semantics/OpenMP/taskwait.f90 new file mode 100644 --- /dev/null +++ b/flang/test/Semantics/OpenMP/taskwait.f90 @@ -0,0 +1,4 @@ +! RUN: %python %S/../test_errors.py %s %flang -fopenmp + +!$omp taskwait +end