================ @@ -11899,6 +11899,9 @@ def err_omp_clause_requires_dispatch_construct : Error< "'%0' clause requires 'dispatch' context selector">; def err_omp_append_args_with_varargs : Error< "'append_args' is not allowed with varargs functions">; +def warn_omp_dispatch_clause_novariants_nocontext : Warning< ---------------- SunilKuravinakop wrote:
In case of : ``` #pragma omp declare variant(foo_variant2) match(user={condition(1)}) #pragma omp declare variant(foo_variant) match(construct={dispatch}) void foo(int x) { } #pragma omp dispatch nocontext(c1) ``` the code generated in the if-else is: ``` if(c1) { foo_variant2(x) } else { foo_variant(x) } ``` whereas for `#pragma omp dispatch novariantc2)` it is ``` if(c2) { foo(x) } else { foo_variant(x) } ``` There is a difference in the code generate at `if` . Hence I cannot use `c1 || c2`. https://github.com/llvm/llvm-project/pull/131838 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits