[clang] [Clang][OpenMP] Fixing Clang error for metadirective with multiple when clauses and no otherwise (PR #148583)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 24 00:25:28 PDT 2025
================
@@ -108,6 +108,12 @@ void foo1(void) {
: parallel) otherwise(parallel for)
for (int i=0; i<10; i++)
;
+
+#pragma omp metadirective when(user = {condition(1)} \
+ : parallel for) when(implementation = {extension(match_none)} \
+ : parallel)
+ for (int i=0; i<10; i++)
+ ;
----------------
Ritanya-B-Bharadwaj wrote:
Since there's no IR change involved and the bug occurs during parsing, I think it's appropriate to keep the test in the messages lit test.
Also the issue being fixed here affects metadirectives that use non-constant conditions, like condition(x), where x is a variable or identifier. It doesn't occur with simple constants like condition(0) or condition(1).
https://github.com/llvm/llvm-project/pull/148583
More information about the cfe-commits
mailing list