diff options
author | Andrzej Warzynski <andrzej.warzynski@arm.com> | 2022-03-28 10:46:47 +0000 |
---|---|---|
committer | Andrzej Warzynski <andrzej.warzynski@arm.com> | 2022-03-28 10:46:47 +0000 |
commit | 4ca111d4cb4c0b425268c86b54fb19c4be2e88dd (patch) | |
tree | 6d91dd6a88db439cb9a40447525270865fcae20d /flang/lib/Semantics/pointer-assignment.cpp | |
parent | 8a2a966520023cd7d424e89b730c054f1f06f496 (diff) | |
download | llvm-4ca111d4cb4c0b425268c86b54fb19c4be2e88dd.zip llvm-4ca111d4cb4c0b425268c86b54fb19c4be2e88dd.tar.gz llvm-4ca111d4cb4c0b425268c86b54fb19c4be2e88dd.tar.bz2 |
Revert "[flang] Add & use a better visit()"
This reverts commit 2ab9990c9eb79682a4d4b183dfbc7612d3e55328. It has
caused multiple build failures:
* https://lab.llvm.org/buildbot/#/builders/177/builds/4346
* https://lab.llvm.org/buildbot/#/builders/180/builds/3803
* https://lab.llvm.org/buildbot/#/builders/175/builds/10419
* https://lab.llvm.org/buildbot/#/builders/191/builds/4318
* https://lab.llvm.org/buildbot/#/builders/173/builds/4274
* https://lab.llvm.org/buildbot/#/builders/181/builds/4297
All these bots failed with a time-out:
```
command timed out: 1200 seconds without output running [b'ninja', b'-j', b'32'], attempting to kill
```
I'm guessing that that's due to template instantiations failing at some
point (https://reviews.llvm.org/D122441 introduced a custom
implementation of std::visit). Everything seems fine when either:
* building on X86 with GCC or Clang (tested with GCC 9.3 and Clang 12)
* building on AArch64 with GCC (tested with GCC 11)
Diffstat (limited to 'flang/lib/Semantics/pointer-assignment.cpp')
-rw-r--r-- | flang/lib/Semantics/pointer-assignment.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/flang/lib/Semantics/pointer-assignment.cpp b/flang/lib/Semantics/pointer-assignment.cpp index d55fa16..2b065253 100644 --- a/flang/lib/Semantics/pointer-assignment.cpp +++ b/flang/lib/Semantics/pointer-assignment.cpp @@ -117,7 +117,7 @@ template <typename T> bool PointerAssignmentChecker::Check(const T &) { template <typename T> bool PointerAssignmentChecker::Check(const evaluate::Expr<T> &x) { - return common::visit([&](const auto &x) { return Check(x); }, x.u); + return std::visit([&](const auto &x) { return Check(x); }, x.u); } bool PointerAssignmentChecker::Check(const SomeExpr &rhs) { @@ -128,7 +128,7 @@ bool PointerAssignmentChecker::Check(const SomeExpr &rhs) { Say("A coindexed object may not be a pointer target"_err_en_US); return false; } else { - return common::visit([&](const auto &x) { return Check(x); }, rhs.u); + return std::visit([&](const auto &x) { return Check(x); }, rhs.u); } } @@ -322,7 +322,7 @@ static bool CheckPointerBounds( const SomeExpr &lhs{assignment.lhs}; const SomeExpr &rhs{assignment.rhs}; bool isBoundsRemapping{false}; - std::size_t numBounds{common::visit( + std::size_t numBounds{std::visit( common::visitors{ [&](const evaluate::Assignment::BoundsSpec &bounds) { return bounds.size(); |