[gcc r13-2355] libstdc++: Add 'typename' for Clang compatibility

Jonathan Wakely redi@gcc.gnu.org
Thu Sep 1 19:39:58 GMT 2022


https://gcc.gnu.org/g:42e489088bf53845c648e512449b72dbd3c7169b

commit r13-2355-g42e489088bf53845c648e512449b72dbd3c7169b
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Thu Sep 1 20:36:06 2022 +0100

    libstdc++: Add 'typename' for Clang compatibility
    
    Clang doesn't yet implement the C++20 change that makes 'typename'
    optional here.
    
    libstdc++-v3/ChangeLog:
    
            * include/std/ranges (adjacent_transform_view::_Iterator): Add
            typename keyword before dependent qualified-id.

Diff:
---
 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 dad1e4c9f93..2b5cb0531f0 100644
--- a/libstdc++-v3/include/std/ranges
+++ b/libstdc++-v3/include/std/ranges
@@ -5555,7 +5555,7 @@ namespace views::__adaptor
       using __detail::__unarize;
       using _Res = invoke_result_t<__unarize<__maybe_const_t<_Const, _Fp>&, _Nm>,
 				   range_reference_t<_Base>>;
-      using _Cat = iterator_traits<iterator_t<_Base>>::iterator_category;
+      using _Cat = typename iterator_traits<iterator_t<_Base>>::iterator_category;
       if constexpr (!is_lvalue_reference_v<_Res>)
 	return input_iterator_tag{};
       else if constexpr (derived_from<_Cat, random_access_iterator_tag>)


More information about the Libstdc++-cvs mailing list