diff --git a/include/fmt/ranges.h b/include/fmt/ranges.h index b166bb2b..101bb399 100644 --- a/include/fmt/ranges.h +++ b/include/fmt/ranges.h @@ -222,8 +222,13 @@ template void for_each(Tuple&& tup, F&& f) { } template -using uncvref_type = - remove_cvref_t()))>; +using range_reference_type = + decltype(*detail::range_begin(std::declval())); + +// We don't use the Range's value_type for anything, but we do need the Range's +// reference type, with cv-ref stripped +template +using uncvref_type = remove_cvref_t>; template OutputIt write_delimiter(OutputIt out) { *out++ = ',';