blob: 56c18864135af4ca1561bf175d122d8fa8dc2eec [file] [log] [blame]
// { dg-do compile { target c++20 } }
// BasicFormatter requirements do not require a const parameter.
#include <format>
struct X { };
template<> struct std::formatter<X, char>
{
constexpr auto parse(format_parse_context& ctx)
{ return ctx.begin(); }
// Takes non-const X&
format_context::iterator format(X&, format_context& ctx) const
{
auto out = ctx.out();
*out++ = 'x';
return out;
}
};
X x;
auto s = std::format("{}", x);