stl_bvector.h (vector<bool>::reserve): Move out of line...

2007-12-11  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_bvector.h (vector<bool>::reserve): Move out of
	line...
	* include/bits/vector.tcc: ... here.

From-SVN: r130777
This commit is contained in:
Paolo Carlini 2007-12-11 19:08:26 +00:00 committed by Paolo Carlini
parent fcd5a1131a
commit c62df8fddb
3 changed files with 26 additions and 15 deletions

View file

@ -1,3 +1,9 @@
2007-12-11 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_bvector.h (vector<bool>::reserve): Move out of
line...
* include/bits/vector.tcc: ... here.
2007-12-10 Jonathan Wakely <jwakely.gcc@gmail.com>
* docs/html/21_strings/howto.html: Add links to referenced articles.

View file

@ -690,21 +690,7 @@ template<typename _Alloc>
{ _M_range_check(__n); return (*this)[__n]; }
void
reserve(size_type __n)
{
if (__n > this->max_size())
__throw_length_error(__N("vector::reserve"));
if (this->capacity() < __n)
{
_Bit_type* __q = this->_M_allocate(__n);
this->_M_impl._M_finish = _M_copy_aligned(begin(), end(),
iterator(__q, 0));
this->_M_deallocate();
this->_M_impl._M_start = iterator(__q, 0);
this->_M_impl._M_end_of_storage = (__q + (__n + int(_S_word_bit) - 1)
/ int(_S_word_bit));
}
}
reserve(size_type __n);
reference
front()

View file

@ -534,6 +534,25 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
// vector<bool>
template<typename _Alloc>
void
vector<bool, _Alloc>::
reserve(size_type __n)
{
if (__n > this->max_size())
__throw_length_error(__N("vector::reserve"));
if (this->capacity() < __n)
{
_Bit_type* __q = this->_M_allocate(__n);
this->_M_impl._M_finish = _M_copy_aligned(begin(), end(),
iterator(__q, 0));
this->_M_deallocate();
this->_M_impl._M_start = iterator(__q, 0);
this->_M_impl._M_end_of_storage = (__q + (__n + int(_S_word_bit) - 1)
/ int(_S_word_bit));
}
}
template<typename _Alloc>
void
vector<bool, _Alloc>::