From 1e8e6c8da1e22c4d32e50d8999705fd370824736 Mon Sep 17 00:00:00 2001 From: "L. E. Segovia" Date: Tue, 1 Jun 2021 23:35:40 +0000 Subject: [PATCH] Fix charconv support with MSVC/GCC11 BUG: 437890 --- src/KSeExpr/Utils.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/KSeExpr/Utils.cpp b/src/KSeExpr/Utils.cpp index 22e6cd8..e48cfe9 100644 --- a/src/KSeExpr/Utils.cpp +++ b/src/KSeExpr/Utils.cpp @@ -6,6 +6,7 @@ #if defined(KSeExpr_HAVE_CHARCONV_WITH_DOUBLES) #include +#include double_t KSeExpr::Utils::atof(const char *num) { @@ -21,7 +22,7 @@ double_t KSeExpr::Utils::atof(const char *num) double_t KSeExpr::Utils::atof(const std::string &num) { double_t v; - auto [p, ec] = std::from_chars(val.data(), val.data() + val.size(), v); + auto [p, ec] = std::from_chars(num.data(), num.data() + num.size(), v); if (ec == std::errc()) { return v; } else { @@ -32,7 +33,7 @@ double_t KSeExpr::Utils::atof(const std::string &num) int32_t KSeExpr::Utils::strtol(const std::string &num) { int32_t v; - auto [p, ec] = std::from_chars(val.data(), val.data() + val.size(), v); + auto [p, ec] = std::from_chars(num.data(), num.data() + num.size(), v); if (ec == std::errc()) { return v; } else if (ec == std::errc::result_out_of_range) { -- 2.31.1