#include <bits/stl_uninitialized.h>
#include <bits/concept_check.h>
-namespace std
+namespace __gnu_cxx
{
+using std::size_t;
+using std::ptrdiff_t;
+using std::_Alloc_traits;
+using std::_Construct;
+using std::_Destroy;
+using std::allocator;
struct _Slist_node_base
{
struct _Slist_iterator_base
{
- typedef size_t size_type;
- typedef ptrdiff_t difference_type;
- typedef forward_iterator_tag iterator_category;
+ typedef size_t size_type;
+ typedef ptrdiff_t difference_type;
+ typedef std::forward_iterator_tag iterator_category;
_Slist_node_base* _M_node;
private:
typedef _Slist_base<_Tp,_Alloc> _Base;
public:
- typedef _Tp value_type;
+ typedef _Tp value_type;
typedef value_type* pointer;
typedef const value_type* const_pointer;
typedef value_type& reference;
inline bool
operator<(const slist<_Tp,_Alloc>& _SL1, const slist<_Tp,_Alloc>& _SL2)
{
- return lexicographical_compare(_SL1.begin(), _SL1.end(),
- _SL2.begin(), _SL2.end());
+ return std::lexicographical_compare(_SL1.begin(), _SL1.end(),
+ _SL2.begin(), _SL2.end());
}
template <class _Tp, class _Alloc>
}
}
+} // namespace __gnu_cxx
+
+namespace std
+{
// Specialization of insert_iterator so that insertions will be constant
// time rather than linear time.
template <class _Tp, class _Alloc>
-class insert_iterator<slist<_Tp, _Alloc> > {
+class insert_iterator<__gnu_cxx::slist<_Tp, _Alloc> > {
protected:
- typedef slist<_Tp, _Alloc> _Container;
+ typedef __gnu_cxx::slist<_Tp, _Alloc> _Container;
_Container* container;
typename _Container::iterator iter;
public:
insert_iterator<_Container>& operator++(int) { return *this; }
};
-} // namespace std
+} // namespace std
#endif /* __SGI_STL_INTERNAL_SLIST_H */