diff options
| author | Louis Dionne <ldionne.2@gmail.com> | 2023-03-16 13:09:44 -0400 |
|---|---|---|
| committer | Louis Dionne <ldionne.2@gmail.com> | 2023-03-22 16:32:26 -0400 |
| commit | 3d334df58742ff53fb00aa3caeb7eb5da3436348 (patch) | |
| tree | 55ba8644be87fa829ffc44c9d31612fa02d5edde /libcxx/include/__format/formatter_bool.h | |
| parent | 77ed8311a625f449e7ee8bebda3b2940be6dc211 (diff) | |
| download | llvm-3d334df58742ff53fb00aa3caeb7eb5da3436348.tar.gz | |
[libc++] Remove availability markup for std::format
std::format is currently experimental, so there is technically no
deployment target requirement for it (since the only symbols required
for it are in `libc++experimental.a`).
However, some parts of std::format depend indirectly on the floating
point std::to_chars implementation, which does have deployment target
requirements.
This patch removes all the availability format for std::format and
updates the XFAILs in the tests to properly explain why they fail
on old deployment targets, when they do. It also changes a couple
of tests to avoid depending on floating-point std::to_chars when
it isn't fundamental to the test.
Finally, some tests are marked as XFAIL but I added a comment saying
TODO FMT This test should not require std::to_chars(floating-point)
These tests do not fundamentally depend on floating-point std::to_chars,
however they end up failing because calling std::format even without a
floating-point argument to format will end up requiring floating-point
std::to_chars. I believe this is an implementation artifact that could
be avoided in all cases where we know the format string at compile-time.
In the tests, I added the TODO comment only to the places where we could
do better and actually avoid relying on floating-point std::to_chars
because we know the format string at compile-time.
Differential Revision: https://reviews.llvm.org/D134598
Diffstat (limited to 'libcxx/include/__format/formatter_bool.h')
| -rw-r--r-- | libcxx/include/__format/formatter_bool.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libcxx/include/__format/formatter_bool.h b/libcxx/include/__format/formatter_bool.h index 84f8bcfa629b..1fb75755fc57 100644 --- a/libcxx/include/__format/formatter_bool.h +++ b/libcxx/include/__format/formatter_bool.h @@ -36,7 +36,7 @@ _LIBCPP_BEGIN_NAMESPACE_STD #if _LIBCPP_STD_VER >= 20 template <__fmt_char_type _CharT> -struct _LIBCPP_TEMPLATE_VIS _LIBCPP_AVAILABILITY_FORMAT formatter<bool, _CharT> { +struct _LIBCPP_TEMPLATE_VIS formatter<bool, _CharT> { public: _LIBCPP_HIDE_FROM_ABI constexpr auto parse(basic_format_parse_context<_CharT>& __parse_ctx) -> decltype(__parse_ctx.begin()) { |
