[PATCH] D116637: [Clang][Sema][OpenMP] Sema support for `atomic compare`
Alexey Bataev via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Feb 4 08:12:41 PST 2022
ABataev added inline comments.
================
Comment at: clang/test/OpenMP/atomic_ast_print.cpp:40
+#ifdef OMP51
+// omp51-error at +1 2 {{atomic compare is not supported for now}}
+#pragma omp atomic compare
----------------
tianshilei1992 wrote:
> ABataev wrote:
> > tianshilei1992 wrote:
> > > ABataev wrote:
> > > > Try to add `-fsyntax-only` in RUN to avoid error message in the test
> > > Adding `-fsyntax-only` will not print the AST, just the error message.
> > > ```
> > > ➜ clang -cc1 -x c++ -fopenmp -fopenmp-version=51 -ast-print atomic.cpp
> > > atomic.cpp:12:20: error: atomic compare is not supported for now
> > > #pragma omp atomic compare
> > > ^
> > > class C {
> > > int x;
> > > public:
> > > int &val() {
> > > return this->x;
> > > }
> > > };
> > > void compare() {
> > > C x;
> > > C e;
> > > C d;
> > > #pragma omp atomic compare
> > > if (x.val() == e.val())
> > > x.val() = d.val();
> > > }
> > > 1 error generated.
> > > ➜ clang -cc1 -x c++ -fopenmp -fopenmp-version=51 -ast-print -fsyntax-only atomic.cpp
> > > atomic.cpp:12:20: error: atomic compare is not supported for now
> > > #pragma omp atomic compare
> > > ^
> > > 1 error generated.
> > > ```
> > Ah, yes. Can you move the error message to codegen from Sema to avoid all these problems?
> Do we support error message in code gen? I didn't see similar code in `clang/lib/CodeGen/CGStmtOpenMP.cpp`.
Check lib/CodeGen/CGOpenMPRuntime.cpp, `getDiagnostics().Report()` calls.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D116637/new/
https://reviews.llvm.org/D116637
More information about the cfe-commits
mailing list