[Openmp-commits] [clang] [flang] [llvm] [openmp] [Clang][OpenMP][LoopTransformations] Add support for "#pragma omp fuse" loop transformation directive and "looprange" clause (PR #139293)

Michael Kruse via Openmp-commits openmp-commits at lists.llvm.org
Wed Aug 6 05:03:07 PDT 2025


================
@@ -14206,10 +14211,48 @@ StmtResult SemaOpenMP::ActOnOpenMPTargetTeamsDistributeSimdDirective(
       getASTContext(), StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B);
 }
 
+/// Overloaded base case function
+template <typename T, typename F> static bool tryHandleAs(T *, F &&) {
+  return false;
+}
+
+/// Tries to recursively cast `Type` to one of the given types and invokes
+/// `Func` if successful.
+///
+/// \tparam Class The first type to check.
+/// \tparam Rest The remaining types to check.
+/// \tparam T The base type of `Type`.
+/// \tparam F The callable type for the function to invoke upon a successful
+/// cast.
----------------
Meinersbur wrote:

```suggestion
/// \tparam F The callable type for the function to invoke upon a successful
///           cast.
```
Consider manual indention after running clang-format. (clang-format will keep the indention of the first indented line)

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


More information about the Openmp-commits mailing list