[flang-commits] [flang] ae0dc31 - [flang][OpenMP] Make `iv` const-reference to original parser::Name (#199727)
via flang-commits
flang-commits at lists.llvm.org
Tue May 26 10:51:08 PDT 2026
Author: Krzysztof Parzyszek
Date: 2026-05-26T12:51:02-05:00
New Revision: ae0dc3104bf5a53a69c4ab5bce6e3a5365fa7740
URL: https://github.com/llvm/llvm-project/commit/ae0dc3104bf5a53a69c4ab5bce6e3a5365fa7740
DIFF: https://github.com/llvm/llvm-project/commit/ae0dc3104bf5a53a69c4ab5bce6e3a5365fa7740.diff
LOG: [flang][OpenMP] Make `iv` const-reference to original parser::Name (#199727)
Merging since this is a trivial change.
Added:
Modified:
flang/include/flang/Semantics/openmp-utils.h
flang/lib/Semantics/openmp-utils.cpp
Removed:
################################################################################
diff --git a/flang/include/flang/Semantics/openmp-utils.h b/flang/include/flang/Semantics/openmp-utils.h
index ab7a09e4ca721..06cb71845f60a 100644
--- a/flang/include/flang/Semantics/openmp-utils.h
+++ b/flang/include/flang/Semantics/openmp-utils.h
@@ -154,7 +154,7 @@ struct LoopControl {
LoopControl(const parser::LoopControl::Bounds &x);
LoopControl(const parser::ConcurrentControl &x);
- parser::Name iv;
+ const parser::Name &iv;
WithSource<MaybeExpr> lbound, ubound, step;
private:
diff --git a/flang/lib/Semantics/openmp-utils.cpp b/flang/lib/Semantics/openmp-utils.cpp
index b615900672042..d07a7c4183734 100644
--- a/flang/lib/Semantics/openmp-utils.cpp
+++ b/flang/lib/Semantics/openmp-utils.cpp
@@ -613,8 +613,8 @@ static bool IsTransformableLoop(const parser::ExecutionPartConstruct &epc) {
return false;
}
-LoopControl::LoopControl(const parser::LoopControl::Bounds &x) {
- iv = x.Name().thing;
+LoopControl::LoopControl(const parser::LoopControl::Bounds &x)
+ : iv(x.Name().thing) {
lbound = fromParserExpr(parser::UnwrapRef<parser::Expr>(x.Lower()));
ubound = fromParserExpr(parser::UnwrapRef<parser::Expr>(x.Upper()));
if (auto &inc{x.Step()}) {
@@ -622,9 +622,9 @@ LoopControl::LoopControl(const parser::LoopControl::Bounds &x) {
}
}
-LoopControl::LoopControl(const parser::ConcurrentControl &x) {
- auto &[name, lower, upper, inc]{x.t};
- iv = name;
+LoopControl::LoopControl(const parser::ConcurrentControl &x)
+ : iv(std::get<parser::Name>(x.t)) {
+ auto &[_, lower, upper, inc]{x.t};
lbound = fromParserExpr(parser::UnwrapRef<parser::Expr>(lower));
ubound = fromParserExpr(parser::UnwrapRef<parser::Expr>(upper));
if (inc) {
More information about the flang-commits
mailing list