Skip to content

Commit 62e1228

Browse files
committed
[TSAR, Build] Fix, non-compliance with the standard in lambda captures.
Structured bindings cannot be captured by lambda expressions until C++20.
1 parent e4f705a commit 62e1228

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

lib/Transform/Clang/DVMHSMAutoPar.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -477,7 +477,9 @@ static void sanitizeAcrossLoops(ItrT I, ItrT EI,
477477
continue;
478478
SmallVector<const Decl *, 4> UntiedVars;
479479
auto &Clauses{Parallel->getClauses()};
480-
for (auto &&[V, Distances] : Clauses.template get<trait::Dependence>()) {
480+
for (auto &Pair : Clauses.template get<trait::Dependence>()) {
481+
auto &&V{Pair.first};
482+
auto &&Distances{Pair.second};
481483
auto Range{Clauses.template get<trait::DirectAccess>().equal_range(V)};
482484
auto TieItr{find_if(Range.first, Range.second, [&V](const auto &Tie) {
483485
return Tie.first.template get<MD>() == V.template get<MD>();

lib/Transform/Clang/DVMHWriter.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1064,7 +1064,9 @@ static void insertPragmaData(PragmaToLocations &PragmaLocations,
10641064
}
10651065
return true;
10661066
};
1067-
for (auto &&[S, Position] : PragmasToInsert) {
1067+
for (auto &Pair : PragmasToInsert) {
1068+
auto &&S{Pair.first};
1069+
auto &&Position{Pair.second};
10681070
auto &ASTCtx{
10691071
cast<ClangTransformationContext>(Position.TfmCtx)->getContext()};
10701072
auto &ParentCtx{ASTCtx.getParentMapContext()};

0 commit comments

Comments
 (0)