[committed] libstdc++: Add missing __cpp_lib_format macro to <version>

Jonathan Wakely jwakely@redhat.com
Wed Mar 22 19:46:47 GMT 2023


On Wed, 22 Mar 2023 at 17:59, Daniel Krügler <daniel.kruegler@gmail.com>
wrote:

> Am Mi., 22. März 2023 um 18:53 Uhr schrieb Jonathan Wakely via
> Libstdc++ <libstdc++@gcc.gnu.org>:
> >
> > Tested powerpc64le-linux, pushed to trunk.
> >
> > -- >8--
> >
> > libstdc++-v3/ChangeLog:
> >
> >         * include/std/version (__cpp_lib_format): Define.
> >         * testsuite/std/format/functions/format.cc: Check it.
> > ---
> >  libstdc++-v3/include/std/version                  |  1 +
> >  .../testsuite/std/format/functions/format.cc      | 15 +++++++++++++++
> >  2 files changed, 16 insertions(+)
> >
> > diff --git a/libstdc++-v3/include/std/version
> b/libstdc++-v3/include/std/version
> > index 25ebfc3e512..a19c39c6cdd 100644
> > --- a/libstdc++-v3/include/std/version
> > +++ b/libstdc++-v3/include/std/version
> > @@ -277,6 +277,7 @@
> >  #define __cpp_lib_constexpr_utility 201811L
> >  #define __cpp_lib_constexpr_vector 201907L
> >  #define __cpp_lib_erase_if 202002L
> > +#define __cpp_lib_format 202106L
>
> Shouldn't the value be 202207L? (This of-course of your conforming
> completeness)
>
>
Well spotted!

The historical values listed in SD-6 are included in a comment in <format>:

// 201907 Text Formatting, Integration of chrono, printf corner cases.
// 202106 std::format improvements.
// 202110 Fixing locale handling in chrono formatters, generator-like types.
// 202207 Encodings in localized formatting of chrono, basic-format-string.
#define __cpp_lib_format 202106L

The libstdc++ support only got as far as 202106 so far :-)

(We actually do implement the support for generator-like types from P2418R2
and the std::basic_format_string change from P2508R1, but can't bump the
value to 202207 until the other changes are supported too.)

I might still find time to finish P2372R3 and P2419R2 for GCC 13, but no
promises.


More information about the Libstdc++ mailing list