llvmbot wrote:

<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: Puelloc (Puellaquae)

<details>
<summary>Changes</summary>

Change unstable assertion into compilation error, and add a test for it.

---
Full diff: https://github.com/llvm/llvm-project/pull/84135.diff


2 Files Affected:

- (modified) clang/lib/CodeGen/CGStmt.cpp (+2-1) 
- (added) clang/test/OpenMP/error_unsupport_feature.c (+8) 


``````````diff
diff --git a/clang/lib/CodeGen/CGStmt.cpp b/clang/lib/CodeGen/CGStmt.cpp
index d0a3a716ad75e1..698986a3e49dd0 100644
--- a/clang/lib/CodeGen/CGStmt.cpp
+++ b/clang/lib/CodeGen/CGStmt.cpp
@@ -414,7 +414,8 @@ void CodeGenFunction::EmitStmt(const Stmt *S, 
ArrayRef<const Attr *> Attrs) {
     CGM.ErrorUnsupported(S, "OpenMP dispatch directive");
     break;
   case Stmt::OMPScopeDirectiveClass:
-    llvm_unreachable("scope not supported with FE outlining");
+    CGM.ErrorUnsupported(S, "scope with FE outlining");
+    break;
   case Stmt::OMPMaskedDirectiveClass:
     EmitOMPMaskedDirective(cast<OMPMaskedDirective>(*S));
     break;
diff --git a/clang/test/OpenMP/error_unsupport_feature.c 
b/clang/test/OpenMP/error_unsupport_feature.c
new file mode 100644
index 00000000000000..a100300752db91
--- /dev/null
+++ b/clang/test/OpenMP/error_unsupport_feature.c
@@ -0,0 +1,8 @@
+// RUN: %clang_cc1 -emit-obj -verify -fopenmp %s
+
+int main () {
+  int r = 0;
+#pragma omp scope reduction(+:r) // expected-error {{cannot compile this scope 
with FE outlining yet}}
+  r++;
+  return r;
+}

``````````

</details>


https://github.com/llvm/llvm-project/pull/84135
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to