Commit d3677132 by Paolo Carlini Committed by Paolo Carlini

list.cc: Use noexcept per the FDIS.

2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/list.cc: Use noexcept per the FDIS.
	* src/compatibility-list-2.cc: Likewise.
	* include/debug/set.h: Likewise.
	* include/debug/unordered_map: Likewise.
	* include/debug/multiset.h: Likewise.
	* include/debug/forward_list: Likewise.
	* include/debug/unordered_set: Likewise.
	* include/debug/vector: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/deque: Likewise.
	* include/debug/list: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/profile/set.h: Likewise.
	* include/profile/unordered_map: Likewise.
	* include/profile/multiset.h: Likewise.
	* include/profile/forward_list: Likewise.
	* include/profile/vector: Likewise.
	* include/profile/unordered_set: Likewise.
	* include/profile/map.h: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/list: Likewise.
	* include/profile/multimap.h: Likewise.
	* include/bits/hashtable.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/hashtable_policy.h: Likewise.
	* include/bits/stl_set.h: Likewise.
	* include/bits/forward_list.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_tree.h: Likewise.

From-SVN: r174295
parent c61e40d3
2011-05-26 Paolo Carlini <paolo.carlini@oracle.com>
* src/list.cc: Use noexcept per the FDIS.
* src/compatibility-list-2.cc: Likewise.
* include/debug/set.h: Likewise.
* include/debug/unordered_map: Likewise.
* include/debug/multiset.h: Likewise.
* include/debug/forward_list: Likewise.
* include/debug/unordered_set: Likewise.
* include/debug/vector: Likewise.
* include/debug/map.h: Likewise.
* include/debug/deque: Likewise.
* include/debug/list: Likewise.
* include/debug/multimap.h: Likewise.
* include/profile/set.h: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/multiset.h: Likewise.
* include/profile/forward_list: Likewise.
* include/profile/vector: Likewise.
* include/profile/unordered_set: Likewise.
* include/profile/map.h: Likewise.
* include/profile/deque: Likewise.
* include/profile/list: Likewise.
* include/profile/multimap.h: Likewise.
* include/bits/hashtable.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/hashtable_policy.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/forward_list.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_tree.h: Likewise.
2011-05-25 Paolo Carlini <paolo.carlini@oracle.com> 2011-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_queue.h: Use noexcept per the FDIS. * include/bits/stl_queue.h: Use noexcept per the FDIS.
......
...@@ -76,7 +76,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -76,7 +76,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
} }
void void
_M_reverse_after() _M_reverse_after() noexcept
{ {
_Fwd_list_node_base* __tail = _M_next; _Fwd_list_node_base* __tail = _M_next;
if (!__tail) if (!__tail)
...@@ -300,11 +300,11 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -300,11 +300,11 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
typedef _Fwd_list_node<_Tp> _Node; typedef _Fwd_list_node<_Tp> _Node;
_Node_alloc_type& _Node_alloc_type&
_M_get_Node_allocator() _M_get_Node_allocator() noexcept
{ return *static_cast<_Node_alloc_type*>(&this->_M_impl); } { return *static_cast<_Node_alloc_type*>(&this->_M_impl); }
const _Node_alloc_type& const _Node_alloc_type&
_M_get_Node_allocator() const _M_get_Node_allocator() const noexcept
{ return *static_cast<const _Node_alloc_type*>(&this->_M_impl); } { return *static_cast<const _Node_alloc_type*>(&this->_M_impl); }
_Fwd_list_base() _Fwd_list_base()
...@@ -644,7 +644,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -644,7 +644,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
/// Get a copy of the memory allocation object. /// Get a copy of the memory allocation object.
allocator_type allocator_type
get_allocator() const get_allocator() const noexcept
{ return this->_M_get_Node_allocator(); } { return this->_M_get_Node_allocator(); }
// 23.2.3.2 iterators: // 23.2.3.2 iterators:
...@@ -654,7 +654,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -654,7 +654,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* in the %forward_list. Iteration is done in ordinary element order. * in the %forward_list. Iteration is done in ordinary element order.
*/ */
iterator iterator
before_begin() before_begin() noexcept
{ return iterator(&this->_M_impl._M_head); } { return iterator(&this->_M_impl._M_head); }
/** /**
...@@ -663,7 +663,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -663,7 +663,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
before_begin() const before_begin() const noexcept
{ return const_iterator(&this->_M_impl._M_head); } { return const_iterator(&this->_M_impl._M_head); }
/** /**
...@@ -671,7 +671,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -671,7 +671,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* in the %forward_list. Iteration is done in ordinary element order. * in the %forward_list. Iteration is done in ordinary element order.
*/ */
iterator iterator
begin() begin() noexcept
{ return iterator(this->_M_impl._M_head._M_next); } { return iterator(this->_M_impl._M_head._M_next); }
/** /**
...@@ -680,7 +680,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -680,7 +680,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
begin() const begin() const noexcept
{ return const_iterator(this->_M_impl._M_head._M_next); } { return const_iterator(this->_M_impl._M_head._M_next); }
/** /**
...@@ -689,7 +689,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -689,7 +689,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
iterator iterator
end() end() noexcept
{ return iterator(0); } { return iterator(0); }
/** /**
...@@ -698,7 +698,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -698,7 +698,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
end() const end() const noexcept
{ return const_iterator(0); } { return const_iterator(0); }
/** /**
...@@ -707,7 +707,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -707,7 +707,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(this->_M_impl._M_head._M_next); } { return const_iterator(this->_M_impl._M_head._M_next); }
/** /**
...@@ -716,7 +716,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -716,7 +716,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
cbefore_begin() const cbefore_begin() const noexcept
{ return const_iterator(&this->_M_impl._M_head); } { return const_iterator(&this->_M_impl._M_head); }
/** /**
...@@ -725,7 +725,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -725,7 +725,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* ordinary element order. * ordinary element order.
*/ */
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(0); } { return const_iterator(0); }
/** /**
...@@ -733,14 +733,14 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -733,14 +733,14 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* equal end().) * equal end().)
*/ */
bool bool
empty() const empty() const noexcept
{ return this->_M_impl._M_head._M_next == 0; } { return this->_M_impl._M_head._M_next == 0; }
/** /**
* Returns the largest possible size of %forward_list. * Returns the largest possible size of %forward_list.
*/ */
size_type size_type
max_size() const max_size() const noexcept
{ return this->_M_get_Node_allocator().max_size(); } { return this->_M_get_Node_allocator().max_size(); }
// 23.2.3.3 element access: // 23.2.3.3 element access:
...@@ -1021,7 +1021,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1021,7 +1021,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Managing the pointer is the user's responsibility. * Managing the pointer is the user's responsibility.
*/ */
void void
clear() clear() noexcept
{ this->_M_erase_after(&this->_M_impl._M_head, 0); } { this->_M_erase_after(&this->_M_impl._M_head, 0); }
// 23.2.3.5 forward_list operations: // 23.2.3.5 forward_list operations:
...@@ -1196,7 +1196,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1196,7 +1196,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Reverse the order of elements in the list in linear time. * Reverse the order of elements in the list in linear time.
*/ */
void void
reverse() reverse() noexcept
{ this->_M_impl._M_head._M_reverse_after(); } { this->_M_impl._M_head._M_reverse_after(); }
private: private:
......
...@@ -239,43 +239,43 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -239,43 +239,43 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// Basic container operations // Basic container operations
iterator iterator
begin() begin() noexcept
{ return iterator(_M_buckets + _M_begin_bucket_index); } { return iterator(_M_buckets + _M_begin_bucket_index); }
const_iterator const_iterator
begin() const begin() const noexcept
{ return const_iterator(_M_buckets + _M_begin_bucket_index); } { return const_iterator(_M_buckets + _M_begin_bucket_index); }
iterator iterator
end() end() noexcept
{ return iterator(_M_buckets + _M_bucket_count); } { return iterator(_M_buckets + _M_bucket_count); }
const_iterator const_iterator
end() const end() const noexcept
{ return const_iterator(_M_buckets + _M_bucket_count); } { return const_iterator(_M_buckets + _M_bucket_count); }
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_M_buckets + _M_begin_bucket_index); } { return const_iterator(_M_buckets + _M_begin_bucket_index); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_M_buckets + _M_bucket_count); } { return const_iterator(_M_buckets + _M_bucket_count); }
size_type size_type
size() const size() const noexcept
{ return _M_element_count; } { return _M_element_count; }
bool bool
empty() const empty() const noexcept
{ return size() == 0; } { return size() == 0; }
allocator_type allocator_type
get_allocator() const get_allocator() const noexcept
{ return allocator_type(_M_node_allocator); } { return allocator_type(_M_node_allocator); }
size_type size_type
max_size() const max_size() const noexcept
{ return _M_node_allocator.max_size(); } { return _M_node_allocator.max_size(); }
// Observers // Observers
...@@ -287,11 +287,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -287,11 +287,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// Bucket operations // Bucket operations
size_type size_type
bucket_count() const bucket_count() const noexcept
{ return _M_bucket_count; } { return _M_bucket_count; }
size_type size_type
max_bucket_count() const max_bucket_count() const noexcept
{ return max_size(); } { return max_size(); }
size_type size_type
...@@ -331,7 +331,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -331,7 +331,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return const_local_iterator(0); } { return const_local_iterator(0); }
float float
load_factor() const load_factor() const noexcept
{ {
return static_cast<float>(size()) / static_cast<float>(bucket_count()); return static_cast<float>(size()) / static_cast<float>(bucket_count());
} }
...@@ -447,7 +447,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -447,7 +447,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
erase(const_iterator, const_iterator); erase(const_iterator, const_iterator);
void void
clear(); clear() noexcept;
// Set number of buckets to be appropriate for container of n element. // Set number of buckets to be appropriate for container of n element.
void rehash(size_type __n); void rehash(size_type __n);
...@@ -1167,7 +1167,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -1167,7 +1167,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void void
_Hashtable<_Key, _Value, _Allocator, _ExtractKey, _Equal, _Hashtable<_Key, _Value, _Allocator, _ExtractKey, _Equal,
_H1, _H2, _Hash, _RehashPolicy, __chc, __cit, __uk>:: _H1, _H2, _Hash, _RehashPolicy, __chc, __cit, __uk>::
clear() clear() noexcept
{ {
_M_deallocate_nodes(_M_buckets, _M_bucket_count); _M_deallocate_nodes(_M_buckets, _M_bucket_count);
_M_element_count = 0; _M_element_count = 0;
......
...@@ -391,7 +391,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -391,7 +391,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
: _M_max_load_factor(__z), _M_growth_factor(2.f), _M_next_resize(0) { } : _M_max_load_factor(__z), _M_growth_factor(2.f), _M_next_resize(0) { }
float float
max_load_factor() const max_load_factor() const noexcept
{ return _M_max_load_factor; } { return _M_max_load_factor; }
// Return a bucket size no smaller than n. // Return a bucket size no smaller than n.
...@@ -615,7 +615,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -615,7 +615,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct _Rehash_base<_Prime_rehash_policy, _Hashtable> struct _Rehash_base<_Prime_rehash_policy, _Hashtable>
{ {
float float
max_load_factor() const max_load_factor() const noexcept
{ {
const _Hashtable* __this = static_cast<const _Hashtable*>(this); const _Hashtable* __this = static_cast<const _Hashtable*>(this);
return __this->__rehash_policy().max_load_factor(); return __this->__rehash_policy().max_load_factor();
......
...@@ -74,13 +74,13 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -74,13 +74,13 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_Bit_reference(_Bit_type * __x, _Bit_type __y) _Bit_reference(_Bit_type * __x, _Bit_type __y)
: _M_p(__x), _M_mask(__y) { } : _M_p(__x), _M_mask(__y) { }
_Bit_reference() : _M_p(0), _M_mask(0) { } _Bit_reference() _GLIBCXX_NOEXCEPT : _M_p(0), _M_mask(0) { }
operator bool() const operator bool() const _GLIBCXX_NOEXCEPT
{ return !!(*_M_p & _M_mask); } { return !!(*_M_p & _M_mask); }
_Bit_reference& _Bit_reference&
operator=(bool __x) operator=(bool __x) _GLIBCXX_NOEXCEPT
{ {
if (__x) if (__x)
*_M_p |= _M_mask; *_M_p |= _M_mask;
...@@ -90,7 +90,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -90,7 +90,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
} }
_Bit_reference& _Bit_reference&
operator=(const _Bit_reference& __x) operator=(const _Bit_reference& __x) _GLIBCXX_NOEXCEPT
{ return *this = bool(__x); } { return *this = bool(__x); }
bool bool
...@@ -102,7 +102,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -102,7 +102,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ return !bool(*this) && bool(__x); } { return !bool(*this) && bool(__x); }
void void
flip() flip() _GLIBCXX_NOEXCEPT
{ *_M_p ^= _M_mask; } { *_M_p ^= _M_mask; }
}; };
...@@ -398,15 +398,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -398,15 +398,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
typedef _Alloc allocator_type; typedef _Alloc allocator_type;
_Bit_alloc_type& _Bit_alloc_type&
_M_get_Bit_allocator() _M_get_Bit_allocator() _GLIBCXX_NOEXCEPT
{ return *static_cast<_Bit_alloc_type*>(&this->_M_impl); } { return *static_cast<_Bit_alloc_type*>(&this->_M_impl); }
const _Bit_alloc_type& const _Bit_alloc_type&
_M_get_Bit_allocator() const _M_get_Bit_allocator() const _GLIBCXX_NOEXCEPT
{ return *static_cast<const _Bit_alloc_type*>(&this->_M_impl); } { return *static_cast<const _Bit_alloc_type*>(&this->_M_impl); }
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return allocator_type(_M_get_Bit_allocator()); } { return allocator_type(_M_get_Bit_allocator()); }
_Bvector_base() _Bvector_base()
...@@ -612,61 +612,61 @@ template<typename _Alloc> ...@@ -612,61 +612,61 @@ template<typename _Alloc>
#endif #endif
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_start; } { return this->_M_impl._M_start; }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_start; } { return this->_M_impl._M_start; }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_finish; } { return this->_M_impl._M_finish; }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_finish; } { return this->_M_impl._M_finish; }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return this->_M_impl._M_start; } { return this->_M_impl._M_start; }
const_iterator const_iterator
cend() const cend() const noexcept
{ return this->_M_impl._M_finish; } { return this->_M_impl._M_finish; }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return size_type(end() - begin()); } { return size_type(end() - begin()); }
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ {
const size_type __isize = const size_type __isize =
__gnu_cxx::__numeric_traits<difference_type>::__max __gnu_cxx::__numeric_traits<difference_type>::__max
...@@ -677,12 +677,12 @@ template<typename _Alloc> ...@@ -677,12 +677,12 @@ template<typename _Alloc>
} }
size_type size_type
capacity() const capacity() const _GLIBCXX_NOEXCEPT
{ return size_type(const_iterator(this->_M_impl._M_end_of_storage, 0) { return size_type(const_iterator(this->_M_impl._M_end_of_storage, 0)
- begin()); } - begin()); }
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return begin() == end(); } { return begin() == end(); }
reference reference
...@@ -741,7 +741,7 @@ template<typename _Alloc> ...@@ -741,7 +741,7 @@ template<typename _Alloc>
// here due to the way we are implementing DR 464 in the debug-mode // here due to the way we are implementing DR 464 in the debug-mode
// vector class. // vector class.
void void
data() { } data() _GLIBCXX_NOEXCEPT { }
void void
push_back(bool __x) push_back(bool __x)
...@@ -768,7 +768,7 @@ template<typename _Alloc> ...@@ -768,7 +768,7 @@ template<typename _Alloc>
// [23.2.5]/1, third-to-last entry in synopsis listing // [23.2.5]/1, third-to-last entry in synopsis listing
static void static void
swap(reference __x, reference __y) swap(reference __x, reference __y) _GLIBCXX_NOEXCEPT
{ {
bool __tmp = __x; bool __tmp = __x;
__x = __y; __x = __y;
...@@ -841,7 +841,7 @@ template<typename _Alloc> ...@@ -841,7 +841,7 @@ template<typename _Alloc>
#endif #endif
void void
flip() flip() _GLIBCXX_NOEXCEPT
{ {
for (_Bit_type * __p = this->_M_impl._M_start._M_p; for (_Bit_type * __p = this->_M_impl._M_start._M_p;
__p != this->_M_impl._M_end_of_storage; ++__p) __p != this->_M_impl._M_end_of_storage; ++__p)
...@@ -849,7 +849,7 @@ template<typename _Alloc> ...@@ -849,7 +849,7 @@ template<typename _Alloc>
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _M_erase_at_end(begin()); } { _M_erase_at_end(begin()); }
......
...@@ -441,7 +441,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -441,7 +441,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
typedef _Alloc allocator_type; typedef _Alloc allocator_type;
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return allocator_type(_M_get_Tp_allocator()); } { return allocator_type(_M_get_Tp_allocator()); }
typedef _Deque_iterator<_Tp, _Tp&, _Tp*> iterator; typedef _Deque_iterator<_Tp, _Tp&, _Tp*> iterator;
...@@ -508,15 +508,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -508,15 +508,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}; };
_Tp_alloc_type& _Tp_alloc_type&
_M_get_Tp_allocator() _M_get_Tp_allocator() _GLIBCXX_NOEXCEPT
{ return *static_cast<_Tp_alloc_type*>(&this->_M_impl); } { return *static_cast<_Tp_alloc_type*>(&this->_M_impl); }
const _Tp_alloc_type& const _Tp_alloc_type&
_M_get_Tp_allocator() const _M_get_Tp_allocator() const _GLIBCXX_NOEXCEPT
{ return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); } { return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); }
_Map_alloc_type _Map_alloc_type
_M_get_map_allocator() const _M_get_map_allocator() const _GLIBCXX_NOEXCEPT
{ return _Map_alloc_type(_M_get_Tp_allocator()); } { return _Map_alloc_type(_M_get_Tp_allocator()); }
_Tp* _Tp*
...@@ -997,7 +997,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -997,7 +997,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
/// Get a copy of the memory allocation object. /// Get a copy of the memory allocation object.
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return _Base::get_allocator(); } { return _Base::get_allocator(); }
// iterators // iterators
...@@ -1006,7 +1006,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1006,7 +1006,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* %deque. Iteration is done in ordinary element order. * %deque. Iteration is done in ordinary element order.
*/ */
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_start; } { return this->_M_impl._M_start; }
/** /**
...@@ -1014,7 +1014,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1014,7 +1014,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element in the %deque. Iteration is done in ordinary element order. * element in the %deque. Iteration is done in ordinary element order.
*/ */
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_start; } { return this->_M_impl._M_start; }
/** /**
...@@ -1023,7 +1023,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1023,7 +1023,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_finish; } { return this->_M_impl._M_finish; }
/** /**
...@@ -1032,7 +1032,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1032,7 +1032,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* ordinary element order. * ordinary element order.
*/ */
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_finish; } { return this->_M_impl._M_finish; }
/** /**
...@@ -1041,7 +1041,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1041,7 +1041,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(this->_M_impl._M_finish); } { return reverse_iterator(this->_M_impl._M_finish); }
/** /**
...@@ -1050,7 +1050,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1050,7 +1050,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* reverse element order. * reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(this->_M_impl._M_finish); } { return const_reverse_iterator(this->_M_impl._M_finish); }
/** /**
...@@ -1059,7 +1059,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1059,7 +1059,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* in reverse element order. * in reverse element order.
*/ */
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(this->_M_impl._M_start); } { return reverse_iterator(this->_M_impl._M_start); }
/** /**
...@@ -1068,7 +1068,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1068,7 +1068,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* done in reverse element order. * done in reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(this->_M_impl._M_start); } { return const_reverse_iterator(this->_M_impl._M_start); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -1077,7 +1077,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1077,7 +1077,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element in the %deque. Iteration is done in ordinary element order. * element in the %deque. Iteration is done in ordinary element order.
*/ */
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return this->_M_impl._M_start; } { return this->_M_impl._M_start; }
/** /**
...@@ -1086,7 +1086,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1086,7 +1086,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* ordinary element order. * ordinary element order.
*/ */
const_iterator const_iterator
cend() const cend() const noexcept
{ return this->_M_impl._M_finish; } { return this->_M_impl._M_finish; }
/** /**
...@@ -1095,7 +1095,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1095,7 +1095,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* reverse element order. * reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(this->_M_impl._M_finish); } { return const_reverse_iterator(this->_M_impl._M_finish); }
/** /**
...@@ -1104,19 +1104,19 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1104,19 +1104,19 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* done in reverse element order. * done in reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(this->_M_impl._M_start); } { return const_reverse_iterator(this->_M_impl._M_start); }
#endif #endif
// [23.2.1.2] capacity // [23.2.1.2] capacity
/** Returns the number of elements in the %deque. */ /** Returns the number of elements in the %deque. */
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_finish - this->_M_impl._M_start; } { return this->_M_impl._M_finish - this->_M_impl._M_start; }
/** Returns the size() of the largest possible %deque. */ /** Returns the size() of the largest possible %deque. */
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_get_Tp_allocator().max_size(); } { return _M_get_Tp_allocator().max_size(); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -1197,7 +1197,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1197,7 +1197,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* equal end().) * equal end().)
*/ */
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_finish == this->_M_impl._M_start; } { return this->_M_impl._M_finish == this->_M_impl._M_start; }
// element access // element access
...@@ -1576,7 +1576,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1576,7 +1576,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* the user's responsibility. * the user's responsibility.
*/ */
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _M_erase_at_end(begin()); } { _M_erase_at_end(begin()); }
protected: protected:
......
...@@ -77,22 +77,22 @@ namespace std _GLIBCXX_VISIBILITY(default) ...@@ -77,22 +77,22 @@ namespace std _GLIBCXX_VISIBILITY(default)
{ {
_List_node_base* _M_next; _List_node_base* _M_next;
_List_node_base* _M_prev; _List_node_base* _M_prev;
static void static void
swap(_List_node_base& __x, _List_node_base& __y) throw (); swap(_List_node_base& __x, _List_node_base& __y) _GLIBCXX_USE_NOEXCEPT;
void void
_M_transfer(_List_node_base* const __first, _M_transfer(_List_node_base* const __first,
_List_node_base* const __last) throw (); _List_node_base* const __last) _GLIBCXX_USE_NOEXCEPT;
void void
_M_reverse() throw (); _M_reverse() _GLIBCXX_USE_NOEXCEPT;
void void
_M_hook(_List_node_base* const __position) throw (); _M_hook(_List_node_base* const __position) _GLIBCXX_USE_NOEXCEPT;
void void
_M_unhook() throw (); _M_unhook() _GLIBCXX_USE_NOEXCEPT;
}; };
_GLIBCXX_END_NAMESPACE_VERSION _GLIBCXX_END_NAMESPACE_VERSION
...@@ -334,19 +334,19 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -334,19 +334,19 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
typedef _Alloc allocator_type; typedef _Alloc allocator_type;
_Node_alloc_type& _Node_alloc_type&
_M_get_Node_allocator() _M_get_Node_allocator() _GLIBCXX_NOEXCEPT
{ return *static_cast<_Node_alloc_type*>(&this->_M_impl); } { return *static_cast<_Node_alloc_type*>(&this->_M_impl); }
const _Node_alloc_type& const _Node_alloc_type&
_M_get_Node_allocator() const _M_get_Node_allocator() const _GLIBCXX_NOEXCEPT
{ return *static_cast<const _Node_alloc_type*>(&this->_M_impl); } { return *static_cast<const _Node_alloc_type*>(&this->_M_impl); }
_Tp_alloc_type _Tp_alloc_type
_M_get_Tp_allocator() const _M_get_Tp_allocator() const _GLIBCXX_NOEXCEPT
{ return _Tp_alloc_type(_M_get_Node_allocator()); } { return _Tp_alloc_type(_M_get_Node_allocator()); }
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return allocator_type(_M_get_Node_allocator()); } { return allocator_type(_M_get_Node_allocator()); }
_List_base() _List_base()
...@@ -718,7 +718,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -718,7 +718,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
/// Get a copy of the memory allocation object. /// Get a copy of the memory allocation object.
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return _Base::get_allocator(); } { return _Base::get_allocator(); }
// iterators // iterators
...@@ -727,7 +727,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -727,7 +727,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* %list. Iteration is done in ordinary element order. * %list. Iteration is done in ordinary element order.
*/ */
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(this->_M_impl._M_node._M_next); } { return iterator(this->_M_impl._M_node._M_next); }
/** /**
...@@ -736,7 +736,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -736,7 +736,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(this->_M_impl._M_node._M_next); } { return const_iterator(this->_M_impl._M_node._M_next); }
/** /**
...@@ -745,7 +745,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -745,7 +745,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* order. * order.
*/ */
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(&this->_M_impl._M_node); } { return iterator(&this->_M_impl._M_node); }
/** /**
...@@ -754,7 +754,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -754,7 +754,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(&this->_M_impl._M_node); } { return const_iterator(&this->_M_impl._M_node); }
/** /**
...@@ -763,7 +763,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -763,7 +763,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* order. * order.
*/ */
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
/** /**
...@@ -772,7 +772,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -772,7 +772,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
/** /**
...@@ -781,7 +781,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -781,7 +781,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* reverse element order. * reverse element order.
*/ */
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
/** /**
...@@ -790,7 +790,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -790,7 +790,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -800,7 +800,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -800,7 +800,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(this->_M_impl._M_node._M_next); } { return const_iterator(this->_M_impl._M_node._M_next); }
/** /**
...@@ -809,7 +809,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -809,7 +809,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(&this->_M_impl._M_node); } { return const_iterator(&this->_M_impl._M_node); }
/** /**
...@@ -818,7 +818,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -818,7 +818,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
/** /**
...@@ -827,7 +827,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -827,7 +827,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -837,17 +837,17 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -837,17 +837,17 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* end().) * end().)
*/ */
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return this->_M_impl._M_node._M_next == &this->_M_impl._M_node; } { return this->_M_impl._M_node._M_next == &this->_M_impl._M_node; }
/** Returns the number of elements in the %list. */ /** Returns the number of elements in the %list. */
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return std::distance(begin(), end()); } { return std::distance(begin(), end()); }
/** Returns the size() of the largest possible %list. */ /** Returns the size() of the largest possible %list. */
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_get_Node_allocator().max_size(); } { return _M_get_Node_allocator().max_size(); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -1192,7 +1192,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1192,7 +1192,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Managing the pointer is the user's responsibility. * Managing the pointer is the user's responsibility.
*/ */
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
_Base::_M_clear(); _Base::_M_clear();
_Base::_M_init(); _Base::_M_init();
...@@ -1412,7 +1412,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1412,7 +1412,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Reverse the order of elements in the list in linear time. * Reverse the order of elements in the list in linear time.
*/ */
void void
reverse() reverse() _GLIBCXX_NOEXCEPT
{ this->_M_impl._M_node._M_reverse(); } { this->_M_impl._M_node._M_reverse(); }
/** /**
......
...@@ -296,7 +296,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -296,7 +296,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
/// Get a copy of the memory allocation object. /// Get a copy of the memory allocation object.
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return _M_t.get_allocator(); } { return _M_t.get_allocator(); }
// iterators // iterators
...@@ -306,7 +306,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -306,7 +306,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Iteration is done in ascending order according to the keys. * Iteration is done in ascending order according to the keys.
*/ */
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -315,7 +315,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -315,7 +315,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* keys. * keys.
*/ */
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -324,7 +324,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -324,7 +324,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -333,7 +333,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -333,7 +333,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* the keys. * the keys.
*/ */
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -342,7 +342,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -342,7 +342,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* keys. * keys.
*/ */
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -351,7 +351,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -351,7 +351,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -360,7 +360,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -360,7 +360,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); } { return _M_t.rend(); }
/** /**
...@@ -369,7 +369,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -369,7 +369,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* order according to the keys. * order according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); } { return _M_t.rend(); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -379,7 +379,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -379,7 +379,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* keys. * keys.
*/ */
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -388,7 +388,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -388,7 +388,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* the keys. * the keys.
*/ */
const_iterator const_iterator
cend() const cend() const noexcept
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -397,7 +397,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -397,7 +397,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -406,7 +406,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -406,7 +406,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* order according to the keys. * order according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return _M_t.rend(); } { return _M_t.rend(); }
#endif #endif
...@@ -415,17 +415,17 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -415,17 +415,17 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* end().) * end().)
*/ */
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return _M_t.empty(); } { return _M_t.empty(); }
/** Returns the size of the %map. */ /** Returns the size of the %map. */
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return _M_t.size(); } { return _M_t.size(); }
/** Returns the maximum size of the %map. */ /** Returns the maximum size of the %map. */
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_t.max_size(); } { return _M_t.max_size(); }
// [23.3.1.2] element access // [23.3.1.2] element access
...@@ -700,7 +700,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -700,7 +700,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Managing the pointer is the user's responsibility. * Managing the pointer is the user's responsibility.
*/ */
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _M_t.clear(); } { _M_t.clear(); }
// observers // observers
......
...@@ -293,7 +293,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -293,7 +293,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
/// Get a copy of the memory allocation object. /// Get a copy of the memory allocation object.
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return _M_t.get_allocator(); } { return _M_t.get_allocator(); }
// iterators // iterators
...@@ -303,7 +303,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -303,7 +303,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* keys. * keys.
*/ */
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -312,7 +312,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -312,7 +312,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* the keys. * the keys.
*/ */
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -321,7 +321,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -321,7 +321,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* keys. * keys.
*/ */
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -330,7 +330,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -330,7 +330,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -339,7 +339,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -339,7 +339,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* keys. * keys.
*/ */
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -348,7 +348,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -348,7 +348,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -357,7 +357,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -357,7 +357,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); } { return _M_t.rend(); }
/** /**
...@@ -366,7 +366,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -366,7 +366,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* descending order according to the keys. * descending order according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); } { return _M_t.rend(); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -376,7 +376,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -376,7 +376,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* the keys. * the keys.
*/ */
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -385,7 +385,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -385,7 +385,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
const_iterator const_iterator
cend() const cend() const noexcept
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -394,7 +394,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -394,7 +394,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -403,24 +403,24 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -403,24 +403,24 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* descending order according to the keys. * descending order according to the keys.
*/ */
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return _M_t.rend(); } { return _M_t.rend(); }
#endif #endif
// capacity // capacity
/** Returns true if the %multimap is empty. */ /** Returns true if the %multimap is empty. */
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return _M_t.empty(); } { return _M_t.empty(); }
/** Returns the size of the %multimap. */ /** Returns the size of the %multimap. */
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return _M_t.size(); } { return _M_t.size(); }
/** Returns the maximum size of the %multimap. */ /** Returns the maximum size of the %multimap. */
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_t.max_size(); } { return _M_t.max_size(); }
// modifiers // modifiers
...@@ -625,7 +625,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -625,7 +625,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* is the user's responsibility. * is the user's responsibility.
*/ */
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _M_t.clear(); } { _M_t.clear(); }
// observers // observers
......
...@@ -275,7 +275,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -275,7 +275,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ return _M_t.key_comp(); } { return _M_t.key_comp(); }
/// Returns the memory allocation object. /// Returns the memory allocation object.
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return _M_t.get_allocator(); } { return _M_t.get_allocator(); }
/** /**
...@@ -284,7 +284,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -284,7 +284,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
iterator iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -293,7 +293,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -293,7 +293,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
iterator iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -302,7 +302,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -302,7 +302,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -311,7 +311,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -311,7 +311,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); } { return _M_t.rend(); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -321,7 +321,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -321,7 +321,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
iterator iterator
cbegin() const cbegin() const noexcept
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -330,7 +330,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -330,7 +330,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
iterator iterator
cend() const cend() const noexcept
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -339,7 +339,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -339,7 +339,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
crbegin() const crbegin() const noexcept
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -348,23 +348,23 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -348,23 +348,23 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
crend() const crend() const noexcept
{ return _M_t.rend(); } { return _M_t.rend(); }
#endif #endif
/// Returns true if the %set is empty. /// Returns true if the %set is empty.
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return _M_t.empty(); } { return _M_t.empty(); }
/// Returns the size of the %set. /// Returns the size of the %set.
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return _M_t.size(); } { return _M_t.size(); }
/// Returns the maximum size of the %set. /// Returns the maximum size of the %set.
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_t.max_size(); } { return _M_t.max_size(); }
/** /**
...@@ -554,7 +554,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -554,7 +554,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* is the user's responsibility. * is the user's responsibility.
*/ */
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _M_t.clear(); } { _M_t.clear(); }
// multiset operations: // multiset operations:
......
...@@ -282,7 +282,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -282,7 +282,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ return _M_t.key_comp(); } { return _M_t.key_comp(); }
/// Returns the allocator object with which the %set was constructed. /// Returns the allocator object with which the %set was constructed.
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return _M_t.get_allocator(); } { return _M_t.get_allocator(); }
/** /**
...@@ -291,7 +291,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -291,7 +291,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
iterator iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -300,7 +300,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -300,7 +300,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
iterator iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -309,7 +309,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -309,7 +309,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
reverse_iterator reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -318,7 +318,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -318,7 +318,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); } { return _M_t.rend(); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -328,7 +328,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -328,7 +328,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
iterator iterator
cbegin() const cbegin() const noexcept
{ return _M_t.begin(); } { return _M_t.begin(); }
/** /**
...@@ -337,7 +337,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -337,7 +337,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
iterator iterator
cend() const cend() const noexcept
{ return _M_t.end(); } { return _M_t.end(); }
/** /**
...@@ -346,7 +346,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -346,7 +346,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to the keys. * to the keys.
*/ */
reverse_iterator reverse_iterator
crbegin() const crbegin() const noexcept
{ return _M_t.rbegin(); } { return _M_t.rbegin(); }
/** /**
...@@ -355,23 +355,23 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -355,23 +355,23 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* according to the keys. * according to the keys.
*/ */
reverse_iterator reverse_iterator
crend() const crend() const noexcept
{ return _M_t.rend(); } { return _M_t.rend(); }
#endif #endif
/// Returns true if the %set is empty. /// Returns true if the %set is empty.
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return _M_t.empty(); } { return _M_t.empty(); }
/// Returns the size of the %set. /// Returns the size of the %set.
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return _M_t.size(); } { return _M_t.size(); }
/// Returns the maximum size of the %set. /// Returns the maximum size of the %set.
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_t.max_size(); } { return _M_t.max_size(); }
/** /**
...@@ -569,7 +569,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -569,7 +569,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* the user's responsibility. * the user's responsibility.
*/ */
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _M_t.clear(); } { _M_t.clear(); }
// set operations: // set operations:
......
...@@ -352,15 +352,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -352,15 +352,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef _Alloc allocator_type; typedef _Alloc allocator_type;
_Node_allocator& _Node_allocator&
_M_get_Node_allocator() _M_get_Node_allocator() _GLIBCXX_NOEXCEPT
{ return *static_cast<_Node_allocator*>(&this->_M_impl); } { return *static_cast<_Node_allocator*>(&this->_M_impl); }
const _Node_allocator& const _Node_allocator&
_M_get_Node_allocator() const _M_get_Node_allocator() const _GLIBCXX_NOEXCEPT
{ return *static_cast<const _Node_allocator*>(&this->_M_impl); } { return *static_cast<const _Node_allocator*>(&this->_M_impl); }
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return allocator_type(_M_get_Node_allocator()); } { return allocator_type(_M_get_Node_allocator()); }
protected: protected:
...@@ -647,56 +647,56 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -647,56 +647,56 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return _M_impl._M_key_compare; } { return _M_impl._M_key_compare; }
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ {
return iterator(static_cast<_Link_type> return iterator(static_cast<_Link_type>
(this->_M_impl._M_header._M_left)); (this->_M_impl._M_header._M_left));
} }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ {
return const_iterator(static_cast<_Const_Link_type> return const_iterator(static_cast<_Const_Link_type>
(this->_M_impl._M_header._M_left)); (this->_M_impl._M_header._M_left));
} }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(static_cast<_Link_type>(&this->_M_impl._M_header)); } { return iterator(static_cast<_Link_type>(&this->_M_impl._M_header)); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ {
return const_iterator(static_cast<_Const_Link_type> return const_iterator(static_cast<_Const_Link_type>
(&this->_M_impl._M_header)); (&this->_M_impl._M_header));
} }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return _M_impl._M_node_count == 0; } { return _M_impl._M_node_count == 0; }
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return _M_impl._M_node_count; } { return _M_impl._M_node_count; }
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_get_Node_allocator().max_size(); } { return _M_get_Node_allocator().max_size(); }
void void
...@@ -794,7 +794,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -794,7 +794,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
erase(const key_type* __first, const key_type* __last); erase(const key_type* __first, const key_type* __last);
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
_M_erase(_M_begin()); _M_erase(_M_begin());
_M_leftmost() = _M_end(); _M_leftmost() = _M_end();
......
...@@ -92,15 +92,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -92,15 +92,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
typedef _Alloc allocator_type; typedef _Alloc allocator_type;
_Tp_alloc_type& _Tp_alloc_type&
_M_get_Tp_allocator() _M_get_Tp_allocator() _GLIBCXX_NOEXCEPT
{ return *static_cast<_Tp_alloc_type*>(&this->_M_impl); } { return *static_cast<_Tp_alloc_type*>(&this->_M_impl); }
const _Tp_alloc_type& const _Tp_alloc_type&
_M_get_Tp_allocator() const _M_get_Tp_allocator() const _GLIBCXX_NOEXCEPT
{ return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); } { return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); }
allocator_type allocator_type
get_allocator() const get_allocator() const _GLIBCXX_NOEXCEPT
{ return allocator_type(_M_get_Tp_allocator()); } { return allocator_type(_M_get_Tp_allocator()); }
_Vector_base() _Vector_base()
...@@ -460,7 +460,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -460,7 +460,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(this->_M_impl._M_start); } { return iterator(this->_M_impl._M_start); }
/** /**
...@@ -469,7 +469,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -469,7 +469,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(this->_M_impl._M_start); } { return const_iterator(this->_M_impl._M_start); }
/** /**
...@@ -478,7 +478,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -478,7 +478,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(this->_M_impl._M_finish); } { return iterator(this->_M_impl._M_finish); }
/** /**
...@@ -487,7 +487,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -487,7 +487,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* ordinary element order. * ordinary element order.
*/ */
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(this->_M_impl._M_finish); } { return const_iterator(this->_M_impl._M_finish); }
/** /**
...@@ -496,7 +496,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -496,7 +496,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
/** /**
...@@ -505,7 +505,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -505,7 +505,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* reverse element order. * reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
/** /**
...@@ -514,7 +514,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -514,7 +514,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* in reverse element order. * in reverse element order.
*/ */
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
/** /**
...@@ -523,7 +523,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -523,7 +523,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* is done in reverse element order. * is done in reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -533,7 +533,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -533,7 +533,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* element order. * element order.
*/ */
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(this->_M_impl._M_start); } { return const_iterator(this->_M_impl._M_start); }
/** /**
...@@ -542,7 +542,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -542,7 +542,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* ordinary element order. * ordinary element order.
*/ */
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(this->_M_impl._M_finish); } { return const_iterator(this->_M_impl._M_finish); }
/** /**
...@@ -551,7 +551,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -551,7 +551,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* reverse element order. * reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
/** /**
...@@ -560,19 +560,19 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -560,19 +560,19 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* is done in reverse element order. * is done in reverse element order.
*/ */
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
// [23.2.4.2] capacity // [23.2.4.2] capacity
/** Returns the number of elements in the %vector. */ /** Returns the number of elements in the %vector. */
size_type size_type
size() const size() const _GLIBCXX_NOEXCEPT
{ return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); } { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
/** Returns the size() of the largest possible %vector. */ /** Returns the size() of the largest possible %vector. */
size_type size_type
max_size() const max_size() const _GLIBCXX_NOEXCEPT
{ return _M_get_Tp_allocator().max_size(); } { return _M_get_Tp_allocator().max_size(); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -647,7 +647,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -647,7 +647,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* hold before needing to allocate more memory. * hold before needing to allocate more memory.
*/ */
size_type size_type
capacity() const capacity() const _GLIBCXX_NOEXCEPT
{ return size_type(this->_M_impl._M_end_of_storage { return size_type(this->_M_impl._M_end_of_storage
- this->_M_impl._M_start); } - this->_M_impl._M_start); }
...@@ -656,7 +656,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -656,7 +656,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* equal end().) * equal end().)
*/ */
bool bool
empty() const empty() const _GLIBCXX_NOEXCEPT
{ return begin() == end(); } { return begin() == end(); }
/** /**
...@@ -800,7 +800,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -800,7 +800,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
#else #else
pointer pointer
#endif #endif
data() data() _GLIBCXX_NOEXCEPT
{ return std::__addressof(front()); } { return std::__addressof(front()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
...@@ -808,7 +808,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -808,7 +808,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
#else #else
const_pointer const_pointer
#endif #endif
data() const data() const _GLIBCXX_NOEXCEPT
{ return std::__addressof(front()); } { return std::__addressof(front()); }
// [23.2.4.3] modifiers // [23.2.4.3] modifiers
...@@ -1036,7 +1036,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -1036,7 +1036,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* the user's responsibility. * the user's responsibility.
*/ */
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _M_erase_at_end(this->_M_impl._M_start); } { _M_erase_at_end(this->_M_impl._M_start); }
protected: protected:
......
// Debugging deque implementation -*- C++ -*- // Debugging deque implementation -*- C++ -*-
// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -173,52 +173,52 @@ namespace __debug ...@@ -173,52 +173,52 @@ namespace __debug
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -496,17 +496,17 @@ namespace __debug ...@@ -496,17 +496,17 @@ namespace __debug
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
}; };
template<typename _Tp, typename _Alloc> template<typename _Tp, typename _Alloc>
......
...@@ -173,39 +173,39 @@ namespace __debug ...@@ -173,39 +173,39 @@ namespace __debug
// iterators: // iterators:
iterator iterator
before_begin() before_begin() noexcept
{ return iterator(_Base::before_begin(), this); } { return iterator(_Base::before_begin(), this); }
const_iterator const_iterator
before_begin() const before_begin() const noexcept
{ return const_iterator(_Base::before_begin(), this); } { return const_iterator(_Base::before_begin(), this); }
iterator iterator
begin() begin() noexcept
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() noexcept
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::cbegin(), this); } { return const_iterator(_Base::cbegin(), this); }
const_iterator const_iterator
cbefore_begin() const cbefore_begin() const noexcept
{ return const_iterator(_Base::cbefore_begin(), this); } { return const_iterator(_Base::cbefore_begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::cend(), this); } { return const_iterator(_Base::cend(), this); }
using _Base::empty; using _Base::empty;
...@@ -392,7 +392,7 @@ namespace __debug ...@@ -392,7 +392,7 @@ namespace __debug
} }
void void
clear() clear() noexcept
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
...@@ -585,10 +585,10 @@ namespace __debug ...@@ -585,10 +585,10 @@ namespace __debug
using _Base::reverse; using _Base::reverse;
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
private: private:
void void
...@@ -669,7 +669,8 @@ namespace __debug ...@@ -669,7 +669,8 @@ namespace __debug
_Safe_iterator_base* __this_its = this->_M_iterators; _Safe_iterator_base* __this_its = this->_M_iterators;
_M_swap_aux(__list, __list._M_iterators, *this, this->_M_iterators); _M_swap_aux(__list, __list._M_iterators, *this, this->_M_iterators);
_Safe_iterator_base* __this_const_its = this->_M_const_iterators; _Safe_iterator_base* __this_const_its = this->_M_const_iterators;
_M_swap_aux(__list, __list._M_const_iterators, *this, this->_M_const_iterators); _M_swap_aux(__list, __list._M_const_iterators, *this,
this->_M_const_iterators);
_M_swap_aux(*this, __this_its, __list, __list._M_iterators); _M_swap_aux(*this, __this_its, __list, __list._M_iterators);
_M_swap_aux(*this, __this_const_its, __list, __list._M_const_iterators); _M_swap_aux(*this, __this_const_its, __list, __list._M_const_iterators);
} }
......
// Debugging list implementation -*- C++ -*- // Debugging list implementation -*- C++ -*-
// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -173,52 +173,52 @@ namespace __debug ...@@ -173,52 +173,52 @@ namespace __debug
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -457,7 +457,7 @@ namespace __debug ...@@ -457,7 +457,7 @@ namespace __debug
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
...@@ -684,10 +684,10 @@ namespace __debug ...@@ -684,10 +684,10 @@ namespace __debug
using _Base::reverse; using _Base::reverse;
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
private: private:
void void
......
...@@ -140,52 +140,52 @@ namespace __debug ...@@ -140,52 +140,52 @@ namespace __debug
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -343,7 +343,7 @@ namespace __debug ...@@ -343,7 +343,7 @@ namespace __debug
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
this->_M_invalidate_all(); this->_M_invalidate_all();
_Base::clear(); _Base::clear();
...@@ -400,11 +400,11 @@ namespace __debug ...@@ -400,11 +400,11 @@ namespace __debug
const_iterator(__res.second, this)); const_iterator(__res.second, this));
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
private: private:
void void
......
...@@ -139,52 +139,52 @@ namespace __debug ...@@ -139,52 +139,52 @@ namespace __debug
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -326,7 +326,7 @@ namespace __debug ...@@ -326,7 +326,7 @@ namespace __debug
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
this->_M_invalidate_all(); this->_M_invalidate_all();
_Base::clear(); _Base::clear();
...@@ -382,10 +382,10 @@ namespace __debug ...@@ -382,10 +382,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
private: private:
void void
......
// Debugging multiset implementation -*- C++ -*- // Debugging multiset implementation -*- C++ -*-
// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -138,52 +138,52 @@ namespace __debug ...@@ -138,52 +138,52 @@ namespace __debug
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -315,7 +315,7 @@ namespace __debug ...@@ -315,7 +315,7 @@ namespace __debug
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
this->_M_invalidate_all(); this->_M_invalidate_all();
_Base::clear(); _Base::clear();
...@@ -379,10 +379,10 @@ namespace __debug ...@@ -379,10 +379,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
private: private:
void void
......
...@@ -138,52 +138,52 @@ namespace __debug ...@@ -138,52 +138,52 @@ namespace __debug
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -323,7 +323,7 @@ namespace __debug ...@@ -323,7 +323,7 @@ namespace __debug
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
this->_M_invalidate_all(); this->_M_invalidate_all();
_Base::clear(); _Base::clear();
...@@ -387,10 +387,10 @@ namespace __debug ...@@ -387,10 +387,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
private: private:
void void
......
...@@ -141,34 +141,34 @@ namespace __debug ...@@ -141,34 +141,34 @@ namespace __debug
} }
void void
clear() clear() noexcept
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
} }
iterator iterator
begin() begin() noexcept
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() noexcept
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
// local versions // local versions
...@@ -293,10 +293,10 @@ namespace __debug ...@@ -293,10 +293,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
private: private:
void void
...@@ -429,34 +429,34 @@ namespace __debug ...@@ -429,34 +429,34 @@ namespace __debug
} }
void void
clear() clear() noexcept
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
} }
iterator iterator
begin() begin() noexcept
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() noexcept
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
// local versions // local versions
...@@ -575,10 +575,10 @@ namespace __debug ...@@ -575,10 +575,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
private: private:
void void
......
// Debugging unordered_set/unordered_multiset implementation -*- C++ -*- // Debugging unordered_set/unordered_multiset implementation -*- C++ -*-
// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -141,34 +141,34 @@ namespace __debug ...@@ -141,34 +141,34 @@ namespace __debug
} }
void void
clear() clear() noexcept
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
} }
iterator iterator
begin() begin() noexcept
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() noexcept
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
// local versions // local versions
...@@ -286,10 +286,10 @@ namespace __debug ...@@ -286,10 +286,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
private: private:
void void
...@@ -418,34 +418,34 @@ namespace __debug ...@@ -418,34 +418,34 @@ namespace __debug
} }
void void
clear() clear() noexcept
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
} }
iterator iterator
begin() begin() noexcept
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() noexcept
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
// local versions // local versions
...@@ -556,10 +556,10 @@ namespace __debug ...@@ -556,10 +556,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
private: private:
void void
......
// Debugging vector implementation -*- C++ -*- // Debugging vector implementation -*- C++ -*-
// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -188,52 +188,52 @@ namespace __debug ...@@ -188,52 +188,52 @@ namespace __debug
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -284,7 +284,7 @@ namespace __debug ...@@ -284,7 +284,7 @@ namespace __debug
#endif #endif
size_type size_type
capacity() const capacity() const _GLIBCXX_NOEXCEPT
{ {
#ifdef _GLIBCXX_DEBUG_PEDANTIC #ifdef _GLIBCXX_DEBUG_PEDANTIC
return _M_guaranteed_capacity; return _M_guaranteed_capacity;
...@@ -508,7 +508,7 @@ namespace __debug ...@@ -508,7 +508,7 @@ namespace __debug
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
_Base::clear(); _Base::clear();
this->_M_invalidate_all(); this->_M_invalidate_all();
...@@ -516,10 +516,10 @@ namespace __debug ...@@ -516,10 +516,10 @@ namespace __debug
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
private: private:
size_type _M_guaranteed_capacity; size_type _M_guaranteed_capacity;
......
// Profiling deque implementation -*- C++ -*- // Profiling deque implementation -*- C++ -*-
// Copyright (C) 2009, 2010 Free Software Foundation, Inc. // Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -154,52 +154,52 @@ namespace __profile ...@@ -154,52 +154,52 @@ namespace __profile
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin()); } { return iterator(_Base::begin()); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end()); } { return iterator(_Base::end()); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -392,16 +392,16 @@ namespace __profile ...@@ -392,16 +392,16 @@ namespace __profile
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
_Base::clear(); _Base::clear();
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
}; };
template<typename _Tp, typename _Alloc> template<typename _Tp, typename _Alloc>
......
// <forward_list> -*- C++ -*- // <forward_list> -*- C++ -*-
// Copyright (C) 2010 Free Software Foundation, Inc. // Copyright (C) 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -119,10 +119,10 @@ namespace __profile ...@@ -119,10 +119,10 @@ namespace __profile
} }
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
}; };
template<typename _Tp, typename _Alloc> template<typename _Tp, typename _Alloc>
......
// Profiling list implementation -*- C++ -*- // Profiling list implementation -*- C++ -*-
// Copyright (C) 2009, 2010 Free Software Foundation, Inc. // Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -135,7 +135,8 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> > ...@@ -135,7 +135,8 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
: _Base(__l, __a) { } : _Base(__l, __a) { }
#endif #endif
~list() { ~list()
{
__profcxx_list_destruct(this); __profcxx_list_destruct(this);
__profcxx_list_destruct2(this); __profcxx_list_destruct2(this);
} }
...@@ -183,64 +184,64 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> > ...@@ -183,64 +184,64 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ {
__profcxx_list_rewind(this); __profcxx_list_rewind(this);
return iterator(_Base::end(), this); return iterator(_Base::end(), this);
} }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ {
__profcxx_list_rewind(this); __profcxx_list_rewind(this);
return const_iterator(_Base::end(), this); return const_iterator(_Base::end(), this);
} }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ {
__profcxx_list_rewind(this); __profcxx_list_rewind(this);
return reverse_iterator(end()); return reverse_iterator(end());
} }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ {
__profcxx_list_rewind(this); __profcxx_list_rewind(this);
return const_reverse_iterator(end()); return const_reverse_iterator(end());
} }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -388,7 +389,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> > ...@@ -388,7 +389,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
{ _Base::swap(__x); } { _Base::swap(__x); }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ _Base::clear(); } { _Base::clear(); }
// 23.2.2.4 list operations: // 23.2.2.4 list operations:
...@@ -564,15 +565,15 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> > ...@@ -564,15 +565,15 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
using _Base::reverse; using _Base::reverse;
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
inline void _M_profile_find() const void _M_profile_find() const
{ } { }
inline void _M_profile_iterate(int __rewind = 0) const void _M_profile_iterate(int __rewind = 0) const
{ {
__profcxx_list_operation(this); __profcxx_list_operation(this);
__profcxx_list_iterate(this); __profcxx_list_iterate(this);
......
...@@ -137,44 +137,44 @@ namespace __profile ...@@ -137,44 +137,44 @@ namespace __profile
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return _Base::begin(); } { return _Base::begin(); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return _Base::begin(); } { return _Base::begin(); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return _Base::end(); } { return _Base::end(); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return _Base::end(); } { return _Base::end(); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ {
__profcxx_map_to_unordered_map_invalidate(this); __profcxx_map_to_unordered_map_invalidate(this);
return reverse_iterator(end()); return reverse_iterator(end());
} }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ {
__profcxx_map_to_unordered_map_invalidate(this); __profcxx_map_to_unordered_map_invalidate(this);
return const_reverse_iterator(end()); return const_reverse_iterator(end());
} }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ {
__profcxx_map_to_unordered_map_invalidate(this); __profcxx_map_to_unordered_map_invalidate(this);
return reverse_iterator(begin()); return reverse_iterator(begin());
} }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ {
__profcxx_map_to_unordered_map_invalidate(this); __profcxx_map_to_unordered_map_invalidate(this);
return const_reverse_iterator(begin()); return const_reverse_iterator(begin());
...@@ -182,22 +182,22 @@ namespace __profile ...@@ -182,22 +182,22 @@ namespace __profile
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ {
__profcxx_map_to_unordered_map_invalidate(this); __profcxx_map_to_unordered_map_invalidate(this);
return const_reverse_iterator(end()); return const_reverse_iterator(end());
} }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ {
__profcxx_map_to_unordered_map_invalidate(this); __profcxx_map_to_unordered_map_invalidate(this);
return const_reverse_iterator(begin()); return const_reverse_iterator(begin());
...@@ -359,12 +359,11 @@ namespace __profile ...@@ -359,12 +359,11 @@ namespace __profile
#endif #endif
void void
swap(map& __x) swap(map& __x)
{ _Base::swap(__x); } { _Base::swap(__x); }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ this->erase(begin(), end()); } { this->erase(begin(), end()); }
// observers: // observers:
...@@ -443,10 +442,10 @@ namespace __profile ...@@ -443,10 +442,10 @@ namespace __profile
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
}; };
......
...@@ -124,52 +124,52 @@ namespace __profile ...@@ -124,52 +124,52 @@ namespace __profile
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin()); } { return iterator(_Base::begin()); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end()); } { return iterator(_Base::end()); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -260,7 +260,7 @@ namespace __profile ...@@ -260,7 +260,7 @@ namespace __profile
{ _Base::swap(__x); } { _Base::swap(__x); }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ this->erase(begin(), end()); } { this->erase(begin(), end()); }
// observers: // observers:
...@@ -315,10 +315,10 @@ namespace __profile ...@@ -315,10 +315,10 @@ namespace __profile
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
}; };
template<typename _Key, typename _Tp, template<typename _Key, typename _Tp,
......
// Profiling multiset implementation -*- C++ -*- // Profiling multiset implementation -*- C++ -*-
// Copyright (C) 2009, 2010 Free Software Foundation, Inc. // Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -124,52 +124,52 @@ namespace __profile ...@@ -124,52 +124,52 @@ namespace __profile
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin()); } { return iterator(_Base::begin()); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end()); } { return iterator(_Base::end()); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -249,7 +249,7 @@ namespace __profile ...@@ -249,7 +249,7 @@ namespace __profile
{ _Base::swap(__x); } { _Base::swap(__x); }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ this->erase(begin(), end()); } { this->erase(begin(), end()); }
// observers: // observers:
...@@ -312,10 +312,10 @@ namespace __profile ...@@ -312,10 +312,10 @@ namespace __profile
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
}; };
......
// Profiling set implementation -*- C++ -*- // Profiling set implementation -*- C++ -*-
// Copyright (C) 2009, 2010 Free Software Foundation, Inc. // Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -124,52 +124,52 @@ namespace __profile ...@@ -124,52 +124,52 @@ namespace __profile
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin()); } { return iterator(_Base::begin()); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end()); } { return iterator(_Base::end()); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin()); } { return const_iterator(_Base::begin()); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end()); } { return const_iterator(_Base::end()); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -259,7 +259,7 @@ namespace __profile ...@@ -259,7 +259,7 @@ namespace __profile
{ _Base::swap(__x); } { _Base::swap(__x); }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ this->erase(begin(), end()); } { this->erase(begin(), end()); }
// observers: // observers:
...@@ -322,10 +322,10 @@ namespace __profile ...@@ -322,10 +322,10 @@ namespace __profile
} }
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
}; };
......
// Profiling unordered_map/unordered_multimap implementation -*- C++ -*- // Profiling unordered_map/unordered_multimap implementation -*- C++ -*-
// Copyright (C) 2009, 2010 Free Software Foundation, Inc. // Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -150,14 +150,13 @@ namespace __profile ...@@ -150,14 +150,13 @@ namespace __profile
} }
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
void void
clear() clear() noexcept
{ {
__profcxx_hashtable_destruct(this, _Base::bucket_count(), __profcxx_hashtable_destruct(this, _Base::bucket_count(),
_Base::size()); _Base::size());
...@@ -418,14 +417,13 @@ namespace __profile ...@@ -418,14 +417,13 @@ namespace __profile
} }
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
void void
clear() clear() noexcept
{ {
__profcxx_hashtable_destruct(this, _Base::bucket_count(), __profcxx_hashtable_destruct(this, _Base::bucket_count(),
_Base::size()); _Base::size());
......
// Profiling unordered_set/unordered_multiset implementation -*- C++ -*- // Profiling unordered_set/unordered_multiset implementation -*- C++ -*-
// Copyright (C) 2009, 2010 Free Software Foundation, Inc. // Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -155,7 +155,7 @@ namespace __profile ...@@ -155,7 +155,7 @@ namespace __profile
} }
void void
clear() clear() noexcept
{ {
__profcxx_hashtable_destruct(this, _Base::bucket_count(), __profcxx_hashtable_destruct(this, _Base::bucket_count(),
_Base::size()); _Base::size());
...@@ -233,10 +233,10 @@ namespace __profile ...@@ -233,10 +233,10 @@ namespace __profile
private: private:
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
void void
_M_profile_resize(size_type __old_size, size_type __new_size) _M_profile_resize(size_type __old_size, size_type __new_size)
...@@ -397,7 +397,7 @@ namespace __profile ...@@ -397,7 +397,7 @@ namespace __profile
} }
void void
clear() clear() noexcept
{ {
__profcxx_hashtable_destruct(this, _Base::bucket_count(), __profcxx_hashtable_destruct(this, _Base::bucket_count(),
_Base::size()); _Base::size());
...@@ -475,10 +475,10 @@ namespace __profile ...@@ -475,10 +475,10 @@ namespace __profile
private: private:
_Base& _Base&
_M_base() { return *this; } _M_base() noexcept { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const noexcept { return *this; }
void void
_M_profile_resize(size_type __old_size, size_type __new_size) _M_profile_resize(size_type __old_size, size_type __new_size)
......
// Profiling vector implementation -*- C++ -*- // Profiling vector implementation -*- C++ -*-
// Copyright (C) 2009, 2010 Free Software Foundation, Inc. // Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the // software; you can redistribute it and/or modify it under the
...@@ -70,10 +70,10 @@ namespace __profile ...@@ -70,10 +70,10 @@ namespace __profile
typedef std::reverse_iterator<const_iterator> const_reverse_iterator; typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
_Base& _Base&
_M_base() { return *this; } _M_base() _GLIBCXX_NOEXCEPT { return *this; }
const _Base& const _Base&
_M_base() const { return *this; } _M_base() const _GLIBCXX_NOEXCEPT { return *this; }
// 23.2.4.1 construct/copy/destroy: // 23.2.4.1 construct/copy/destroy:
explicit explicit
...@@ -148,7 +148,8 @@ namespace __profile ...@@ -148,7 +148,8 @@ namespace __profile
: _Base(__l, __a) { } : _Base(__l, __a) { }
#endif #endif
~vector() { ~vector()
{
__profcxx_vector_destruct(this, this->capacity(), this->size()); __profcxx_vector_destruct(this, this->capacity(), this->size());
__profcxx_vector_destruct2(this); __profcxx_vector_destruct2(this);
} }
...@@ -185,52 +186,52 @@ namespace __profile ...@@ -185,52 +186,52 @@ namespace __profile
// iterators: // iterators:
iterator iterator
begin() begin() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::begin(), this); } { return iterator(_Base::begin(), this); }
const_iterator const_iterator
begin() const begin() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
iterator iterator
end() end() _GLIBCXX_NOEXCEPT
{ return iterator(_Base::end(), this); } { return iterator(_Base::end(), this); }
const_iterator const_iterator
end() const end() const _GLIBCXX_NOEXCEPT
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
reverse_iterator reverse_iterator
rbegin() rbegin() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(end()); } { return reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
rbegin() const rbegin() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
reverse_iterator reverse_iterator
rend() rend() _GLIBCXX_NOEXCEPT
{ return reverse_iterator(begin()); } { return reverse_iterator(begin()); }
const_reverse_iterator const_reverse_iterator
rend() const rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
const_iterator const_iterator
cbegin() const cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); } { return const_iterator(_Base::begin(), this); }
const_iterator const_iterator
cend() const cend() const noexcept
{ return const_iterator(_Base::end(), this); } { return const_iterator(_Base::end(), this); }
const_reverse_iterator const_reverse_iterator
crbegin() const crbegin() const noexcept
{ return const_reverse_iterator(end()); } { return const_reverse_iterator(end()); }
const_reverse_iterator const_reverse_iterator
crend() const crend() const noexcept
{ return const_reverse_iterator(begin()); } { return const_reverse_iterator(begin()); }
#endif #endif
...@@ -417,7 +418,7 @@ namespace __profile ...@@ -417,7 +418,7 @@ namespace __profile
} }
void void
clear() clear() _GLIBCXX_NOEXCEPT
{ {
__profcxx_vector_destruct(this, this->capacity(), this->size()); __profcxx_vector_destruct(this, this->capacity(), this->size());
__profcxx_vector_destruct2(this); __profcxx_vector_destruct2(this);
......
...@@ -43,21 +43,22 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT ...@@ -43,21 +43,22 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT
void void
_M_transfer(_List_node_base * const __first, _M_transfer(_List_node_base * const __first,
_List_node_base * const __last) throw (); _List_node_base * const __last) _GLIBCXX_USE_NOEXCEPT;
void void
_M_reverse() throw (); _M_reverse() _GLIBCXX_USE_NOEXCEPT;
void void
_M_hook(_List_node_base * const __position) throw (); _M_hook(_List_node_base * const __position) _GLIBCXX_USE_NOEXCEPT;
void void
_M_unhook() throw (); _M_unhook() _GLIBCXX_USE_NOEXCEPT;
}; };
void void
_List_node_base::_M_transfer(_List_node_base * const __first, _List_node_base::
_List_node_base * const __last) throw () _M_transfer(_List_node_base * const __first,
_List_node_base * const __last) _GLIBCXX_USE_NOEXCEPT
{ {
if (this != __last) if (this != __last)
{ {
...@@ -75,7 +76,7 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT ...@@ -75,7 +76,7 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT
} }
void void
_List_node_base::_M_reverse() throw () _List_node_base::_M_reverse() _GLIBCXX_USE_NOEXCEPT
{ {
_List_node_base* __tmp = this; _List_node_base* __tmp = this;
do do
...@@ -89,7 +90,8 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT ...@@ -89,7 +90,8 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT
} }
void void
_List_node_base::_M_hook(_List_node_base* const __position) throw () _List_node_base::
_M_hook(_List_node_base* const __position) _GLIBCXX_USE_NOEXCEPT
{ {
this->_M_next = __position; this->_M_next = __position;
this->_M_prev = __position->_M_prev; this->_M_prev = __position->_M_prev;
...@@ -98,7 +100,7 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT ...@@ -98,7 +100,7 @@ _GLIBCXX_BEGIN_NAMESPACE_COMPAT
} }
void void
_List_node_base::_M_unhook() throw () _List_node_base::_M_unhook() _GLIBCXX_USE_NOEXCEPT
{ {
_List_node_base* const __next_node = this->_M_next; _List_node_base* const __next_node = this->_M_next;
_List_node_base* const __prev_node = this->_M_prev; _List_node_base* const __prev_node = this->_M_prev;
......
...@@ -57,7 +57,8 @@ namespace std _GLIBCXX_VISIBILITY(default) ...@@ -57,7 +57,8 @@ namespace std _GLIBCXX_VISIBILITY(default)
_GLIBCXX_BEGIN_NAMESPACE_VERSION _GLIBCXX_BEGIN_NAMESPACE_VERSION
void void
_List_node_base::swap(_List_node_base& __x, _List_node_base& __y) throw() _List_node_base::swap(_List_node_base& __x,
_List_node_base& __y) _GLIBCXX_USE_NOEXCEPT
{ {
if ( __x._M_next != &__x ) if ( __x._M_next != &__x )
{ {
...@@ -89,8 +90,9 @@ namespace std _GLIBCXX_VISIBILITY(default) ...@@ -89,8 +90,9 @@ namespace std _GLIBCXX_VISIBILITY(default)
} }
void void
_List_node_base::_M_transfer(_List_node_base * const __first, _List_node_base::
_List_node_base * const __last) throw() _M_transfer(_List_node_base * const __first,
_List_node_base * const __last) _GLIBCXX_USE_NOEXCEPT
{ {
if (this != __last) if (this != __last)
{ {
...@@ -108,7 +110,7 @@ namespace std _GLIBCXX_VISIBILITY(default) ...@@ -108,7 +110,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
} }
void void
_List_node_base::_M_reverse() throw() _List_node_base::_M_reverse() _GLIBCXX_USE_NOEXCEPT
{ {
_List_node_base* __tmp = this; _List_node_base* __tmp = this;
do do
...@@ -122,7 +124,8 @@ namespace std _GLIBCXX_VISIBILITY(default) ...@@ -122,7 +124,8 @@ namespace std _GLIBCXX_VISIBILITY(default)
} }
void void
_List_node_base::_M_hook(_List_node_base* const __position) throw() _List_node_base::
_M_hook(_List_node_base* const __position) _GLIBCXX_USE_NOEXCEPT
{ {
this->_M_next = __position; this->_M_next = __position;
this->_M_prev = __position->_M_prev; this->_M_prev = __position->_M_prev;
...@@ -131,7 +134,7 @@ namespace std _GLIBCXX_VISIBILITY(default) ...@@ -131,7 +134,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
} }
void void
_List_node_base::_M_unhook() throw() _List_node_base::_M_unhook() _GLIBCXX_USE_NOEXCEPT
{ {
_List_node_base* const __next_node = this->_M_next; _List_node_base* const __next_node = this->_M_next;
_List_node_base* const __prev_node = this->_M_prev; _List_node_base* const __prev_node = this->_M_prev;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment