Clang complains about the missing typename. I believe it's not required
in a more complete implementation of C++, but it's nicer to support
less complete implementations.
---
 libstdc++-v3/include/std/ranges | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libstdc++-v3/include/std/ranges b/libstdc++-v3/include/std/ranges
index 8bf359e477c..220a44e11a8 100644
--- a/libstdc++-v3/include/std/ranges
+++ b/libstdc++-v3/include/std/ranges
@@ -3583,7 +3583,7 @@ namespace views::__adaptor
          static auto _S_iter_cat()
          {
            using _Base = elements_view::_Base<_Const>;
-           using _Cat = iterator_traits<iterator_t<_Base>>::iterator_category;
+           using _Cat = typename 
iterator_traits<iterator_t<_Base>>::iterator_category;
            using _Res = 
decltype((std::get<_Nm>(*std::declval<iterator_t<_Base>>())));
            if constexpr (!is_lvalue_reference_v<_Res>)
              return input_iterator_tag{};
-- 
2.31.1

Reply via email to