egorkaa cde18a38bb
Support width and alignment in std::exception formatter (#4860)
* Support width and alignment in std::exception formatter

The formatter for std::exception (and std::exception_ptr) previously
accepted only the optional 't' type-name specifier, so standard fill,
align and width specifiers were rejected with "unknown format
specifier". This made it impossible to pad or align exception messages,
e.g. when laying them out in a log column.

Parse the standard fill/align/width specifiers (as the std::filesystem::
path formatter already does) and apply them when writing the message.
Dynamic width ({:{}}) and the 'none'/'unknown exception' cases for
exception_ptr are handled too. Existing behavior ({}, {:t}, nested
exception unwinding) is unchanged.

* Update std.h
2026-08-13 11:00:46 -07:00
..
args.h Unify copyright notices 2026-05-31 08:54:06 -07:00
base.h Bump version 2026-07-29 11:04:35 -07:00
chrono.h fix out-of-range float to int conversion in to_nonnegative_int (#4802) 2026-06-16 23:14:58 -07:00
color.h Unify copyright notices 2026-05-31 08:54:06 -07:00
compile.h Fix FMT_COMPILE failure with format_as mapped types (Issue #4794) (#4836) 2026-07-12 09:21:55 -07:00
core.h Unify copyright notices 2026-05-31 08:54:06 -07:00
fmt-c.h Minor cleanup 2026-06-26 15:57:41 -07:00
format-inl.h Rename loc_copy to locale in locale helpers (#4876) 2026-08-10 09:12:29 -07:00
format.h Simplify hexfloat comment and retry CI downloads on more 50x errors 2026-08-12 09:21:04 -07:00
os.h Unify copyright notices 2026-05-31 08:54:06 -07:00
ostream.h Remove extra newline 2026-07-25 07:52:08 -07:00
printf.h Unify copyright notices 2026-05-31 08:54:06 -07:00
ranges.h Fix compile time format for ranges, style, and std (#4759) 2026-05-31 08:21:35 -07:00
std.h Support width and alignment in std::exception formatter (#4860) 2026-08-13 11:00:46 -07:00
xchar.h Rename loc_copy to locale in locale helpers (#4876) 2026-08-10 09:12:29 -07:00