fmtlib backport to fix warning spam under gcc 13

This commit is contained in:
LDA 2023-07-12 15:33:25 -07:00
parent 2b964a2384
commit dbb998459b

View File

@ -1671,8 +1671,7 @@ constexpr auto encode_types() -> unsigned long long {
template <typename Context, typename T> template <typename Context, typename T>
FMT_CONSTEXPR FMT_INLINE auto make_value(T&& val) -> value<Context> { FMT_CONSTEXPR FMT_INLINE auto make_value(T&& val) -> value<Context> {
auto&& arg = arg_mapper<Context>().map(FMT_FORWARD(val)); using arg_type = remove_cvref_t<decltype(arg_mapper<Context>().map(val))>;
using arg_type = remove_cvref_t<decltype(arg)>;
constexpr bool formattable_char = constexpr bool formattable_char =
!std::is_same<arg_type, unformattable_char>::value; !std::is_same<arg_type, unformattable_char>::value;
@ -1691,7 +1690,7 @@ FMT_CONSTEXPR FMT_INLINE auto make_value(T&& val) -> value<Context> {
formattable, formattable,
"Cannot format an argument. To make type T formattable provide a " "Cannot format an argument. To make type T formattable provide a "
"formatter<T> specialization: https://fmt.dev/latest/api.html#udt"); "formatter<T> specialization: https://fmt.dev/latest/api.html#udt");
return {arg}; return {arg_mapper<Context>().map(val)};
} }
template <typename Context, typename T> template <typename Context, typename T>