+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.
{ _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()
// 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>::