Merge branch 'master' of github.com:fmtlib/fmt

This commit is contained in:
Victor Zverovich 2020-05-15 09:43:38 -07:00
commit d3964d7b1e
2 changed files with 8 additions and 1 deletions

View File

@ -257,6 +257,9 @@ class printf_arg_formatter : public detail::arg_formatter_base<Range> {
return (*this)(static_cast<int>(value)); return (*this)(static_cast<int>(value));
fmt_specs.sign = sign::none; fmt_specs.sign = sign::none;
fmt_specs.alt = false; fmt_specs.alt = false;
// align::numeric needs to be overwritten here since the '0' flag is
// ignored for non-numeric types
if (fmt_specs.align == align::none || fmt_specs.align == align::numeric)
fmt_specs.align = align::right; fmt_specs.align = align::right;
return base::operator()(value); return base::operator()(value);
} else { } else {

View File

@ -156,6 +156,10 @@ TEST(PrintfTest, PlusFlag) {
TEST(PrintfTest, MinusFlag) { TEST(PrintfTest, MinusFlag) {
EXPECT_PRINTF("abc ", "%-5s", "abc"); EXPECT_PRINTF("abc ", "%-5s", "abc");
EXPECT_PRINTF("abc ", "%0--5s", "abc"); EXPECT_PRINTF("abc ", "%0--5s", "abc");
EXPECT_PRINTF("7 ", "%-5d", 7);
EXPECT_PRINTF("97 ", "%-5hhi", 'a');
EXPECT_PRINTF("a ", "%-5c", 'a');
} }
TEST(PrintfTest, SpaceFlag) { TEST(PrintfTest, SpaceFlag) {