Description
After this commit 6de0454 :
In file included from tst.cpp:2: fmt/include/fmt/core.h: In instantiation of 'decltype (vis(0)) fmt::v6::visit_format_arg(Visitor&&, const fmt::v6::basic_format_arg<Context>&) [with Visitor = fmt::v6::printf_arg_formatter<fmt::v6::buffer_range<char> >; Context = fmt::v6::basic_printf_context<std::back_insert_iterator<fmt::v6::internal::buffer<char> >, char>; decltype (vis(0)) = std::back_insert_iterator<fmt::v6::internal::buffer<char> >]': fmt/include/fmt/printf.h:560:21: required from 'OutputIt fmt::v6::basic_printf_context<OutputIt, Char>::format() [with ArgFormatter = fmt::v6::printf_arg_formatter<fmt::v6::buffer_range<char> >; OutputIt = std::back_insert_iterator<fmt::v6::internal::buffer<char> >; Char = char]' fmt/include/fmt/printf.h:181:3: required from 'void fmt::v6::internal::printf(fmt::v6::internal::buffer<Char>&, fmt::v6::basic_string_view<Char>, fmt::v6::basic_format_args<Context>) [with Char = char; Context = fmt::v6::basic_printf_context<std::back_insert_iterator<fmt::v6::internal::buffer<char> >, char>]' fmt/include/fmt/printf.h:604:9: required from 'std::__cxx11::basic_string<Char> fmt::v6::vsprintf(const S&, fmt::v6::basic_format_args<fmt::v6::basic_printf_context<std::back_insert_iterator<fmt::v6::internal::buffer<Char> >, Char> >) [with S = fmt::v6::basic_string_view<char>; Char = char]' fmt/include/fmt/printf.h:621:18: required from 'std::__cxx11::basic_string<Char> fmt::v6::sprintf(const S&, const Args& ...) [with S = const char*; Args = {char [5]}; Char = char]' tst.cpp:8:62: required from here fmt/include/fmt/core.h:966:15: error: no match for call to '(fmt::v6::printf_arg_formatter<fmt::v6::buffer_range<char> >) (const __int128&)' 966 | return vis(arg.value_.int128_value); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from tst.cpp:3: fmt/include/fmt/printf.h:239:12: note: candidate: 'template<class T, typename std::enable_if<std::is_integral<_Tp>::value, int>::type <anonymous> > fmt::v6::printf_arg_formatter<Range>::iterator fmt::v6::printf_arg_formatter<Range>::operator()(T) [with T = T; typename std::enable_if<std::is_integral<U>::value, int>::type <anonymous> = <enumerator>; Range = fmt::v6::buffer_range<char>]' 239 | iterator operator()(T value) { | ^~~~~~~~ fmt/include/fmt/printf.h:239:12: note: template argument deduction/substitution failed: In file included from tst.cpp:2: fmt/include/fmt/core.h:226:62: error: no type named 'type' in 'struct std::enable_if<false, int>' 226 | #define FMT_ENABLE_IF(...) enable_if_t<(__VA_ARGS__), int> = 0 | ^ fmt/include/fmt/printf.h:238:25: note: in expansion of macro 'FMT_ENABLE_IF' 238 | template <typename T, FMT_ENABLE_IF(std::is_integral<T>::value)> | ^~~~~~~~~~~~~