libstdc++: Fix std::format("{}", 'c')
When I added a fast path for std::format("{}", x) in r14-5587-g41a5ea4cab2c59 I forgot to handle char separately from other integral types. That caused std::format("{}", 'c') to return "99" instead of "c". libstdc++-v3/ChangeLog: * include/std/format (__do_vformat_to): Handle char separately from other integral types. * testsuite/std/format/functions/format.cc: Check for expected output for char and bool arguments. * testsuite/std/format/string.cc: Check that 0 filling is rejected for character and string formats.
Showing
- libstdc++-v3/include/std/format 9 additions, 0 deletionslibstdc++-v3/include/std/format
- libstdc++-v3/testsuite/std/format/functions/format.cc 56 additions, 0 deletionslibstdc++-v3/testsuite/std/format/functions/format.cc
- libstdc++-v3/testsuite/std/format/string.cc 3 additions, 0 deletionslibstdc++-v3/testsuite/std/format/string.cc
Please register or sign in to comment