Skip to content

Commit

Permalink
Remove obsolete reverse_iterator workarounds
Browse files Browse the repository at this point in the history
  • Loading branch information
pdimov committed Jan 25, 2025
1 parent 9e2868f commit f5a3f1b
Showing 1 changed file with 0 additions and 22 deletions.
22 changes: 0 additions & 22 deletions include/boost/array.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -78,19 +78,8 @@ namespace boost {
BOOST_CONSTEXPR const_iterator cend() const BOOST_NOEXCEPT { return elems+N; }

// reverse iterator support
#if !defined(BOOST_MSVC_STD_ITERATOR) && !defined(BOOST_NO_STD_ITERATOR_TRAITS)
typedef std::reverse_iterator<iterator> reverse_iterator;
typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
#elif defined(_RWSTD_NO_CLASS_PARTIAL_SPEC)
typedef std::reverse_iterator<iterator, std::random_access_iterator_tag,
value_type, reference, iterator, difference_type> reverse_iterator;
typedef std::reverse_iterator<const_iterator, std::random_access_iterator_tag,
value_type, const_reference, const_iterator, difference_type> const_reverse_iterator;
#else
// workaround for broken reverse_iterator implementations
typedef std::reverse_iterator<iterator,T> reverse_iterator;
typedef std::reverse_iterator<const_iterator,T> const_reverse_iterator;
#endif

reverse_iterator rbegin() BOOST_NOEXCEPT { return reverse_iterator(end()); }
const_reverse_iterator rbegin() const BOOST_NOEXCEPT {
Expand Down Expand Up @@ -210,19 +199,8 @@ namespace boost {
const_iterator cend() const BOOST_NOEXCEPT { return cbegin(); }

// reverse iterator support
#if !defined(BOOST_MSVC_STD_ITERATOR) && !defined(BOOST_NO_STD_ITERATOR_TRAITS)
typedef std::reverse_iterator<iterator> reverse_iterator;
typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
#elif defined(_RWSTD_NO_CLASS_PARTIAL_SPEC)
typedef std::reverse_iterator<iterator, std::random_access_iterator_tag,
value_type, reference, iterator, difference_type> reverse_iterator;
typedef std::reverse_iterator<const_iterator, std::random_access_iterator_tag,
value_type, const_reference, const_iterator, difference_type> const_reverse_iterator;
#else
// workaround for broken reverse_iterator implementations
typedef std::reverse_iterator<iterator,T> reverse_iterator;
typedef std::reverse_iterator<const_iterator,T> const_reverse_iterator;
#endif

reverse_iterator rbegin() BOOST_NOEXCEPT { return reverse_iterator(end()); }
const_reverse_iterator rbegin() const BOOST_NOEXCEPT {
Expand Down

0 comments on commit f5a3f1b

Please sign in to comment.