[flang-commits] [flang] [flang] Replace PointerUnion::dyn_cast with llvm::dyn_cast (NFC) (PR #235608)

via flang-commits flang-commits at lists.llvm.org
Sun Oct 25 23:23:24 PDT 2026


llvmorg-github-actions[bot] wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-flang-fir-hlfir

Author: Kazu Hirata (kazutakahirata)

<details>
<summary>Changes</summary>

PointerUnion::dyn_cast has been soft-deprecated in favor of
llvm::dyn_cast and llvm::dyn_cast_if_present.  This patch replaces
PointerUnion::dyn_cast with llvm::dyn_cast.

Note that AliasAnalysis::Source::SourceOrigin::u is always initialized
with nonnull values, and other methods in AliasAnalysis.cpp already
use llvm::dyn_cast and llvm::cast on origin.u.

This patch completes the migration away from PointerUnion::dyn_cast
under flang/.

Assisted-by: Antigravity


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


1 Files Affected:

- (modified) flang/lib/Optimizer/Analysis/AliasAnalysis.cpp (+2-2) 


``````````diff
diff --git a/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp b/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
index 9abf8232261636..cbedfd7c8fa439 100644
--- a/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
+++ b/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
@@ -473,7 +473,7 @@ bool AliasAnalysis::Source::isDeclaredAllocatable() const {
     return var && var.isAllocatable();
   };
 
-  auto value = origin.u.dyn_cast<mlir::Value>();
+  auto value = llvm::dyn_cast<mlir::Value>(origin.u);
   return (value && isAllocatable(value.getDefiningOp())) ||
          isAllocatable(origin.instantiationPoint);
 }
@@ -491,7 +491,7 @@ bool AliasAnalysis::Source::isCrayPointerOrPointee() const {
 }
 
 bool AliasAnalysis::Source::isDummyArgument() const {
-  if (auto v = origin.u.dyn_cast<mlir::Value>()) {
+  if (auto v = llvm::dyn_cast<mlir::Value>(origin.u)) {
     return fir::isDummyArgument(v);
   }
   return false;

``````````

</details>


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


More information about the flang-commits mailing list