diff --git a/include/fmt/core.h b/include/fmt/core.h index ca06f8c7..12467eb6 100644 --- a/include/fmt/core.h +++ b/include/fmt/core.h @@ -472,10 +472,10 @@ struct compile_string {}; template struct is_compile_string : std::is_base_of {}; -template ::value>> -inline auto to_string_view(const S &s) -> basic_string_view { - typedef typename S::Char Char; - return basic_string_view{s.data(), s.size() - 1}; +template ::value>::type> +inline auto to_string_view(const S &s) -> basic_string_view { + typedef typename S::char_type char_type; + return basic_string_view{s.data(), s.size() - 1}; } template diff --git a/include/fmt/format.h b/include/fmt/format.h index 1689b176..94561e33 100644 --- a/include/fmt/format.h +++ b/include/fmt/format.h @@ -2243,10 +2243,10 @@ FMT_CONSTEXPR bool check_format_string( template typename std::enable_if::value>::type check_format_string(String format_str) { - typedef typename String::Char Char; + typedef typename String::char_type char_type; FMT_CONSTEXPR_DECL bool invalid_format = - internal::check_format_string( - basic_string_view(format_str.data(), format_str.size())); + internal::check_format_string( + basic_string_view(format_str.data(), format_str.size())); (void)invalid_format; } @@ -3598,10 +3598,10 @@ FMT_END_NAMESPACE #define FMT_STRING(s) [] { \ typedef typename std::decay::type pointer; \ struct S : fmt::compile_string { \ - typedef typename std::remove_cv::type>::type Char;\ + typedef typename std::remove_cv::type>::type char_type;\ static FMT_CONSTEXPR pointer data() { return s; } \ - static FMT_CONSTEXPR size_t size() { return sizeof(s) / sizeof(Char); } \ - explicit operator fmt::basic_string_view() const { return s; } \ + static FMT_CONSTEXPR size_t size() { return sizeof(s) / sizeof(char_type); } \ + explicit operator fmt::basic_string_view() const { return s; } \ }; \ return S{}; \ }() diff --git a/test/format-test.cc b/test/format-test.cc index 697a2ad2..631a23f6 100644 --- a/test/format-test.cc +++ b/test/format-test.cc @@ -2380,8 +2380,8 @@ TEST(FormatTest, VFormatTo) { fmt::vformat_to(std::back_inserter(w), L"{}", wargs); EXPECT_EQ(L"42", w); w.clear(); - fmt::vformat_to(std::back_inserter(w), FMT_STRING(L"{}"), args); - EXPECT_EQ("42", w); + fmt::vformat_to(std::back_inserter(w), FMT_STRING(L"{}"), wargs); + EXPECT_EQ(L"42", w); } #endif // FMT_USE_CONSTEXPR