summaryrefslogtreecommitdiff
path: root/absl/strings
diff options
context:
space:
mode:
authorGravatar Rose <83477269+AtariDreams@users.noreply.github.com>2023-02-10 13:19:30 -0500
committerGravatar Rose <83477269+AtariDreams@users.noreply.github.com>2023-02-14 10:51:42 -0500
commitb7a8491fbd90b7de010b5e7f74e09996520f3e61 (patch)
tree0e8ce4eed369e701a0e61a4b4edf2270fe3dae2a /absl/strings
parentd6a45e95ab515b55a2437835fdd5873c6572131d (diff)
Remove Workarounds for Old Clang Bug
https://bugs.llvm.org/show_bug.cgi?id=38289 has been addressed since 2019. We just have to check to see if the clang being used to compile with is any version before major version 9.
Diffstat (limited to 'absl/strings')
-rw-r--r--absl/strings/internal/str_format/float_conversion.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/absl/strings/internal/str_format/float_conversion.cc b/absl/strings/internal/str_format/float_conversion.cc
index 8e497852..fe0ad4bd 100644
--- a/absl/strings/internal/str_format/float_conversion.cc
+++ b/absl/strings/internal/str_format/float_conversion.cc
@@ -1102,7 +1102,7 @@ void PrintExponent(int exp, char e, Buffer *out) {
template <typename Float, typename Int>
constexpr bool CanFitMantissa() {
return
-#if defined(__clang__) && !defined(__SSE3__)
+#if defined(__clang__) && (__clang_major__ < 9) && !defined(__SSE3__)
// Workaround for clang bug: https://bugs.llvm.org/show_bug.cgi?id=38289
// Casting from long double to uint64_t is miscompiled and drops bits.
(!std::is_same<Float, long double>::value ||