[clang] [OpenMP][Clang] Handle unsupported inscan modifier for generic types (PR #79431)

Animesh Kumar via cfe-commits cfe-commits at lists.llvm.org
Sun Jan 28 21:03:17 PST 2024


================
@@ -19520,6 +19520,13 @@ static bool actOnOMPReductionKindClause(
   bool FirstIter = true;
   for (Expr *RefExpr : VarList) {
     assert(RefExpr && "nullptr expr in OpenMP reduction clause.");
+    if (ClauseKind == OMPC_reduction &&
+        RD.RedModifier == OMPC_REDUCTION_inscan && RefExpr->isTypeDependent()) {
+      S.Diag(RefExpr->getExprLoc(),
+             diag::err_omp_inscan_reduction_on_template_type);
+      continue;
+    }
+
----------------
animeshk-amd wrote:

It should ideally be supported. However, the compiler crashes as per #67002 on the latest builds.

https://github.com/llvm/llvm-project/pull/79431


More information about the cfe-commits mailing list