diff --git a/AK/Format.cpp b/AK/Format.cpp index e157a494859..af8155e7e0a 100644 --- a/AK/Format.cpp +++ b/AK/Format.cpp @@ -984,11 +984,11 @@ ErrorOr Formatter::format(FormatBuilder& builder, char value) return formatter.format(builder, { &value, 1 }); } } -ErrorOr Formatter::format(FormatBuilder& builder, wchar_t value) +ErrorOr Formatter::format(FormatBuilder& builder, char32_t value) { if (m_mode == Mode::Binary || m_mode == Mode::BinaryUppercase || m_mode == Mode::Decimal || m_mode == Mode::Octal || m_mode == Mode::Hexadecimal || m_mode == Mode::HexadecimalUppercase) { Formatter formatter { *this }; - return formatter.format(builder, static_cast(value)); + return formatter.format(builder, value); } else { StringBuilder codepoint; codepoint.append_code_point(value); diff --git a/AK/Format.h b/AK/Format.h index b9689c5e00b..259cfd7b2c6 100644 --- a/AK/Format.h +++ b/AK/Format.h @@ -514,8 +514,8 @@ struct Formatter : StandardFormatter { ErrorOr format(FormatBuilder&, char); }; template<> -struct Formatter : StandardFormatter { - ErrorOr format(FormatBuilder& builder, wchar_t); +struct Formatter : StandardFormatter { + ErrorOr format(FormatBuilder& builder, char32_t); }; template<> struct Formatter : StandardFormatter { diff --git a/Tests/AK/TestFormat.cpp b/Tests/AK/TestFormat.cpp index 215fa64ccfa..427cd765472 100644 --- a/Tests/AK/TestFormat.cpp +++ b/Tests/AK/TestFormat.cpp @@ -397,16 +397,17 @@ TEST_CASE(vector_format) } } -TEST_CASE(format_wchar) +TEST_CASE(format_utf32) { - EXPECT_EQ(ByteString::formatted("{}", L'a'), "a"); - EXPECT_EQ(ByteString::formatted("{}", L'\U0001F41E'), "\xF0\x9F\x90\x9E"); - EXPECT_EQ(ByteString::formatted("{:x}", L'a'), "61"); - EXPECT_EQ(ByteString::formatted("{:x}", L'\U0001F41E'), "1f41e"); - EXPECT_EQ(ByteString::formatted("{:d}", L'a'), "97"); - EXPECT_EQ(ByteString::formatted("{:d}", L'\U0001F41E'), "128030"); + EXPECT_EQ(ByteString::formatted("{}", U'a'), "a"); + EXPECT_EQ(ByteString::formatted("{}", U'\U0001F41E'), "\xF0\x9F\x90\x9E"); + EXPECT_EQ(ByteString::formatted("{:x}", U'a'), "61"); + EXPECT_EQ(ByteString::formatted("{:x}", U'\U0001F41E'), "1f41e"); - EXPECT_EQ(ByteString::formatted("{:6}", L'a'), "a "); - EXPECT_EQ(ByteString::formatted("{:6d}", L'a'), " 97"); - EXPECT_EQ(ByteString::formatted("{:#x}", L'\U0001F41E'), "0x1f41e"); + EXPECT_EQ(ByteString::formatted("{:d}", U'a'), "97"); + EXPECT_EQ(ByteString::formatted("{:d}", U'\U0001F41E'), "128030"); + + EXPECT_EQ(ByteString::formatted("{:6}", U'a'), "a "); + EXPECT_EQ(ByteString::formatted("{:6d}", U'a'), " 97"); + EXPECT_EQ(ByteString::formatted("{:#x}", U'\U0001F41E'), "0x1f41e"); }