diff --git a/libs/base/string_utils.hpp b/libs/base/string_utils.hpp index 1452425b5..c8d3e621c 100644 --- a/libs/base/string_utils.hpp +++ b/libs/base/string_utils.hpp @@ -152,11 +152,17 @@ inline std::string DebugPrint(UniString const & s) class TokenizeIteratorBase { - template - static constexpr bool is_utf8cpp_iterator = false; + template + struct is_utf8cpp_iterator + { + static bool constexpr value = false; + }; - template - static constexpr bool is_utf8cpp_iterator> = true; + template + struct is_utf8cpp_iterator> + { + static bool constexpr value = true; + }; public: using difference_type = std::ptrdiff_t; @@ -165,7 +171,7 @@ public: template static std::string_view ToStringView(T first, T last) { - if constexpr (is_utf8cpp_iterator) + if constexpr (is_utf8cpp_iterator::value) return TokenizeIteratorBase::ToStringView(first.base(), last.base()); else return std::string_view(first, last);