diff --git a/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp b/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp index 70fa18ad65b9b..2bc79100b03b6 100644 --- a/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp +++ b/flang/lib/Optimizer/Analysis/AliasAnalysis.cpp @@ -641,14 +641,18 @@ AliasAnalysis::Source AliasAnalysis::getSource(mlir::Value v, } else if (isDummyArgument(def)) { defOp = nullptr; v = def; + } else { + type = SourceKind::Indirect; } - + // TODO: This assignment is redundant but somehow works around an + // apparent MSVC bug reporting "undeclared identifier" at the next + // "breakFromLoop = true;". See + // . breakFromLoop = true; - return; + } else { + // No further tracking for addresses loaded from memory for now. + type = SourceKind::Indirect; } - - // No further tracking for addresses loaded from memory for now. - type = SourceKind::Indirect; breakFromLoop = true; }) .Case([&](auto op) {