diff --git a/STL_Extension/include/CGAL/Multiset.h b/STL_Extension/include/CGAL/Multiset.h index d05f3a1c718..31244ba244a 100644 --- a/STL_Extension/include/CGAL/Multiset.h +++ b/STL_Extension/include/CGAL/Multiset.h @@ -473,8 +473,25 @@ public: friend class const_iterator; // Define the reverse iterators: - typedef std::reverse_iterator reverse_iterator; - typedef std::reverse_iterator const_reverse_iterator; +#if defined(__SUNPRO_CC) && defined(_RWSTD_NO_CLASS_PARTIAL_SPEC) + typedef std::reverse_iterator< iterator, + typename iterator::iterator_category, + typename iterator::value_type, + typename iterator::reference, + typename iterator::pointer, + typename iterator::difference_type + > reverse_iterator; + typedef std::reverse_iterator< const_iterator, + typename const_iterator::iterator_category, + typename const_iterator::value_type, + typename const_iterator::reference, + typename const_iterator::pointer, + typename const_iterator::difference_type + > const_reverse_iterator; +#else + typedef std::reverse_iterator< iterator > reverse_iterator; + typedef std::reverse_iterator< const_iterator > const_reverse_iterator; +#endif // defined(__SUNPRO_CC) && defined(_RWSTD_NO_CLASS_PARTIAL_SPEC) protected: