[committed] libstdc++: Remove workaround for PR c++/78173

Jonathan Wakely jwakely@redhat.com
Tue Dec 15 11:48:50 GMT 2020


Now that the G++ bug is fixed we no longer need to protect this partial
specialization from complaining about subtracting void pointers.

libstdc++-v3/ChangeLog:

	* include/bits/iterator_concepts.h (incrementable_traits<Tp>):
	Remove workaround for PR c++/78173.

Tested powerpc64le-linux. Committed to trunk.

-------------- next part --------------
commit fa452a843d26a64a5ca0fd7c17ea1bd6e1b81a69
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Tue Dec 15 11:40:07 2020

    libstdc++: Remove workaround for PR c++/78173
    
    Now that the G++ bug is fixed we no longer need to protect this partial
    specialization from complaining about subtracting void pointers.
    
    libstdc++-v3/ChangeLog:
    
            * include/bits/iterator_concepts.h (incrementable_traits<Tp>):
            Remove workaround for PR c++/78173.

diff --git a/libstdc++-v3/include/bits/iterator_concepts.h b/libstdc++-v3/include/bits/iterator_concepts.h
index 6668caa8185..414a81e7249 100644
--- a/libstdc++-v3/include/bits/iterator_concepts.h
+++ b/libstdc++-v3/include/bits/iterator_concepts.h
@@ -163,10 +163,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
   template<typename _Tp>
     requires (!requires { typename _Tp::difference_type; }
 	      && requires(const _Tp& __a, const _Tp& __b)
-	      {
-		requires (!is_void_v<remove_pointer_t<_Tp>>); // PR c++/78173
-		{ __a - __b } -> integral;
-	      })
+	      { { __a - __b } -> integral; })
     struct incrementable_traits<_Tp>
     {
       using difference_type


More information about the Libstdc++ mailing list