[flang-commits] [flang] 74e59e7 - [flang] Remove GCC 7.2 workarounds (#73574)
via flang-commits
flang-commits at lists.llvm.org
Mon Dec 4 08:45:01 PST 2023
Author: Brad Smith
Date: 2023-12-04T11:44:56-05:00
New Revision: 74e59e7752ac80607d817308a63d0574a6e8cbe1
URL: https://github.com/llvm/llvm-project/commit/74e59e7752ac80607d817308a63d0574a6e8cbe1
DIFF: https://github.com/llvm/llvm-project/commit/74e59e7752ac80607d817308a63d0574a6e8cbe1.diff
LOG: [flang] Remove GCC 7.2 workarounds (#73574)
The minimum GCC version was bumped from 7.1 to 7.4 so garbage collect
the 7.2 workarounds.
https://reviews.llvm.org/D156286
Added:
Modified:
flang/lib/Evaluate/variable.cpp
flang/lib/Semantics/symbol.cpp
Removed:
################################################################################
diff --git a/flang/lib/Evaluate/variable.cpp b/flang/lib/Evaluate/variable.cpp
index 29483b103054c..d73ba835a0524 100644
--- a/flang/lib/Evaluate/variable.cpp
+++ b/flang/lib/Evaluate/variable.cpp
@@ -567,15 +567,7 @@ template <typename T> BaseObject Designator<T>::GetBaseObject() const {
common::visitors{
[](SymbolRef symbol) { return BaseObject{symbol}; },
[](const Substring &sstring) { return sstring.GetBaseObject(); },
- [](const auto &x) {
-#if !__clang__ && __GNUC__ == 7 && __GNUC_MINOR__ == 2
- if constexpr (std::is_same_v<std::decay_t<decltype(x)>,
- Substring>) {
- return x.GetBaseObject();
- } else
-#endif
- return BaseObject{x.GetFirstSymbol()};
- },
+ [](const auto &x) { return BaseObject{x.GetFirstSymbol()}; },
},
u);
}
@@ -585,15 +577,7 @@ template <typename T> const Symbol *Designator<T>::GetLastSymbol() const {
common::visitors{
[](SymbolRef symbol) { return &*symbol; },
[](const Substring &sstring) { return sstring.GetLastSymbol(); },
- [](const auto &x) {
-#if !__clang__ && __GNUC__ == 7 && __GNUC_MINOR__ == 2
- if constexpr (std::is_same_v<std::decay_t<decltype(x)>,
- Substring>) {
- return x.GetLastSymbol();
- } else
-#endif
- return &x.GetLastSymbol();
- },
+ [](const auto &x) { return &x.GetLastSymbol(); },
},
u);
}
diff --git a/flang/lib/Semantics/symbol.cpp b/flang/lib/Semantics/symbol.cpp
index 2ce8e83e47714..6b9f1071f6091 100644
--- a/flang/lib/Semantics/symbol.cpp
+++ b/flang/lib/Semantics/symbol.cpp
@@ -733,22 +733,10 @@ bool GenericKind::IsOperator() const {
std::string GenericKind::ToString() const {
return common::visit(
- common::visitors {
- [](const OtherKind &x) { return std::string{EnumToString(x)}; },
- [](const common::DefinedIo &x) { return AsFortran(x).ToString(); },
-#if !__clang__ && __GNUC__ == 7 && __GNUC_MINOR__ == 2
- [](const common::NumericOperator &x) {
- return std::string{common::EnumToString(x)};
- },
- [](const common::LogicalOperator &x) {
- return std::string{common::EnumToString(x)};
- },
- [](const common::RelationalOperator &x) {
- return std::string{common::EnumToString(x)};
- },
-#else
- [](const auto &x) { return std::string{common::EnumToString(x)}; },
-#endif
+ common::visitors{
+ [](const OtherKind &x) { return std::string{EnumToString(x)}; },
+ [](const common::DefinedIo &x) { return AsFortran(x).ToString(); },
+ [](const auto &x) { return std::string{common::EnumToString(x)}; },
},
u);
}
More information about the flang-commits
mailing list