Commit 3a9fdf30 by Phil Edwards

tables.html: Finished now.

2003-01-11  Phil Edwards  <pme@gcc.gnu.org>

	* docs/doxygen/tables.html:  Finished now.
	* docs/doxygen/user.cfg.in:  Update to latest version of Doxygen.
	* include/bits/basic_ios.h (basic_ios::rdbuf):  Add example to
	comments.

	* include/bits/deque.tcc, include/bits/stl_alloc.h,
	include/bits/stl_deque.h, include/bits/stl_list.h,
	include/bits/stl_vector.h:  Remove _GLIBCPP_DEPRECATED bits scheduled
	for 3.4 removal.

From-SVN: r61221
parent b3504bc1
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -31,10 +31,6 @@
are also noted or incorporated.
</p>
<p class="smallertext">This will probably be incomplete for a while because
filling out the tables is mind-frothingly boring. Also, the HTML table
rendering is ugly. (Update: mozilla 0.9.9 looks MUCH better.)</p>
<hr />
<a name="65"><p>
......
......@@ -302,7 +302,14 @@ namespace std
* in derived classes by overrides of the zero-argument @c rdbuf(),
* which is non-virtual for hysterical raisins. As a result, you
* must use explicit qualifications to access this function via any
* derived class.
* derived class. For example:
*
* @code
* std::fstream foo; // or some other derived type
* std::streambuf* p = .....;
*
* foo.ios::rdbuf(p); // ios == basic_ios<char>
* @endcode
*/
basic_streambuf<_CharT, _Traits>*
rdbuf(basic_streambuf<_CharT, _Traits>* __sb);
......
......@@ -328,29 +328,6 @@ namespace std
}
}
#ifdef _GLIBCPP_DEPRECATED
// Called only if _M_finish._M_cur == _M_finish._M_last - 1.
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
_M_push_back_aux()
{
_M_reserve_map_at_back();
*(_M_finish._M_node + 1) = _M_allocate_node();
try
{
_Construct(_M_finish._M_cur);
_M_finish._M_set_node(_M_finish._M_node + 1);
_M_finish._M_cur = _M_finish._M_first;
}
catch(...)
{
_M_deallocate_node(*(_M_finish._M_node + 1));
__throw_exception_again;
}
}
#endif
// Called only if _M_start._M_cur == _M_start._M_first.
template <typename _Tp, typename _Alloc>
void
......@@ -374,30 +351,6 @@ namespace std
}
}
#ifdef _GLIBCPP_DEPRECATED
// Called only if _M_start._M_cur == _M_start._M_first.
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
_M_push_front_aux()
{
_M_reserve_map_at_front();
*(_M_start._M_node - 1) = _M_allocate_node();
try
{
_M_start._M_set_node(_M_start._M_node - 1);
_M_start._M_cur = _M_start._M_last - 1;
_Construct(_M_start._M_cur);
}
catch(...)
{
++_M_start;
_M_deallocate_node(*(_M_start._M_node - 1));
__throw_exception_again;
}
}
#endif
// Called only if _M_finish._M_cur == _M_finish._M_first.
template <typename _Tp, typename _Alloc>
void deque<_Tp,_Alloc>::
......@@ -508,44 +461,6 @@ namespace std
return __pos;
}
#ifdef _GLIBCPP_DEPRECATED
// Nothing seems to actually use this. According to the pattern followed by
// the rest of the SGI code, it would be called by the deprecated insert(pos)
// function, but that has been replaced. We'll take our time removing this
// anyhow; mark for 3.4. -pme
template <typename _Tp, typename _Alloc>
typename deque<_Tp,_Alloc>::iterator
deque<_Tp,_Alloc>::
_M_insert_aux(iterator __pos)
{
difference_type __index = __pos - _M_start;
if (static_cast<size_type>(__index) < size() / 2)
{
push_front(front());
iterator __front1 = _M_start;
++__front1;
iterator __front2 = __front1;
++__front2;
__pos = _M_start + __index;
iterator __pos1 = __pos;
++__pos1;
copy(__front2, __pos1, __front1);
}
else
{
push_back(back());
iterator __back1 = _M_finish;
--__back1;
iterator __back2 = __back1;
--__back2;
__pos = _M_start + __index;
copy_backward(__pos, __back2, __back1);
}
*__pos = value_type();
return __pos;
}
#endif
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
......
......@@ -74,10 +74,6 @@
* into a "standard" one.
* @endif
*
* @note The @c reallocate member functions have been deprecated for 3.2
* and will be removed in 3.4. You must define @c _GLIBCPP_DEPRECATED
* to make this visible in 3.2; see c++config.h.
*
* The canonical description of these classes is in docs/html/ext/howto.html
* or online at http://gcc.gnu.org/onlinedocs/libstdc++/ext/howto.html#3
*/
......@@ -129,9 +125,6 @@ namespace std
{
private:
static void* _S_oom_malloc(size_t);
#ifdef _GLIBCPP_DEPRECATED
static void* _S_oom_realloc(void*, size_t);
#endif
static void (* __malloc_alloc_oom_handler)();
public:
......@@ -148,17 +141,6 @@ namespace std
deallocate(void* __p, size_t /* __n */)
{ free(__p); }
#ifdef _GLIBCPP_DEPRECATED
static void*
reallocate(void* __p, size_t /* old_sz */, size_t __new_sz)
{
void* __result = realloc(__p, __new_sz);
if (__builtin_expect(__result == 0, 0))
__result = _S_oom_realloc(__p, __new_sz);
return __result;
}
#endif
static void (* __set_malloc_handler(void (*__f)()))()
{
void (* __old)() = __malloc_alloc_oom_handler;
......@@ -191,28 +173,6 @@ namespace std
}
}
#ifdef _GLIBCPP_DEPRECATED
template<int __inst>
void*
__malloc_alloc_template<__inst>::
_S_oom_realloc(void* __p, size_t __n)
{
void (* __my_malloc_handler)();
void* __result;
for (;;)
{
__my_malloc_handler = __malloc_alloc_oom_handler;
if (__builtin_expect(__my_malloc_handler == 0, 0))
__throw_bad_alloc();
(*__my_malloc_handler)();
__result = realloc(__p, __n);
if (__result)
return __result;
}
}
#endif
// Should not be referenced within the library anymore.
typedef __new_alloc __mem_interface;
......@@ -292,20 +252,6 @@ namespace std
assert(*(size_t*)__real_p == __n);
_Alloc::deallocate(__real_p, __n + (int) _S_extra);
}
#ifdef _GLIBCPP_DEPRECATED
static void*
reallocate(void* __p, size_t __old_sz, size_t __new_sz)
{
char* __real_p = (char*)__p - (int) _S_extra;
assert(*(size_t*)__real_p == __old_sz);
char* __result = (char*) _Alloc::reallocate(__real_p,
__old_sz + (int) _S_extra,
__new_sz + (int) _S_extra);
*(size_t*)__result = __new_sz;
return __result + (int) _S_extra;
}
#endif
};
......@@ -455,11 +401,6 @@ namespace std
*__my_free_list = __q;
}
}
#ifdef _GLIBCPP_DEPRECATED
static void*
reallocate(void* __p, size_t __old_sz, size_t __new_sz);
#endif
};
template<bool __threads, int __inst> _Atomic_word
......@@ -591,27 +532,6 @@ namespace std
}
#ifdef _GLIBCPP_DEPRECATED
template<bool threads, int inst>
void*
__default_alloc_template<threads, inst>::
reallocate(void* __p, size_t __old_sz, size_t __new_sz)
{
void* __result;
size_t __copy_sz;
if (__old_sz > (size_t) _MAX_BYTES && __new_sz > (size_t) _MAX_BYTES)
return(realloc(__p, __new_sz));
if (_S_round_up(__old_sz) == _S_round_up(__new_sz))
return(__p);
__result = allocate(__new_sz);
__copy_sz = __new_sz > __old_sz? __old_sz : __new_sz;
memcpy(__result, __p, __copy_sz);
deallocate(__p, __old_sz);
return __result;
}
#endif
template<bool __threads, int __inst>
_STL_mutex_lock
__default_alloc_template<__threads,__inst>::_S_node_allocator_lock
......
......@@ -1025,31 +1025,6 @@ namespace std
_M_push_front_aux(__x);
}
#ifdef _GLIBCPP_DEPRECATED
/**
* @brief Add data to the front of the %deque.
*
* This is a typical stack operation. The function creates a
* default-constructed element at the front of the %deque. Due to the
* nature of a %deque this operation can be done in constant time. You
* should consider using push_front(value_type()) instead.
*
* @note This was deprecated in 3.2 and will be removed in 3.4. You must
* define @c _GLIBCPP_DEPRECATED to make this visible in 3.2; see
* c++config.h.
*/
void
push_front()
{
if (_M_start._M_cur != _M_start._M_first) {
_Construct(_M_start._M_cur - 1);
--_M_start._M_cur;
}
else
_M_push_front_aux();
}
#endif
/**
* @brief Add data to the end of the %deque.
* @param x Data to be added.
......@@ -1069,31 +1044,6 @@ namespace std
_M_push_back_aux(__x);
}
#ifdef _GLIBCPP_DEPRECATED
/**
* @brief Add data to the end of the %deque.
*
* This is a typical stack operation. The function creates a
* default-constructed element at the end of the %deque. Due to the nature
* of a %deque this operation can be done in constant time. You should
* consider using push_back(value_type()) instead.
*
* @note This was deprecated in 3.2 and will be removed in 3.4. You must
* define @c _GLIBCPP_DEPRECATED to make this visible in 3.2; see
* c++config.h.
*/
void
push_back()
{
if (_M_finish._M_cur != _M_finish._M_last - 1) {
_Construct(_M_finish._M_cur);
++_M_finish._M_cur;
}
else
_M_push_back_aux();
}
#endif
/**
* @brief Removes first element.
*
......@@ -1144,25 +1094,6 @@ namespace std
iterator
insert(iterator position, const value_type& __x);
#ifdef _GLIBCPP_DEPRECATED
/**
* @brief Inserts an element into the %deque.
* @param position An iterator into the %deque.
* @return An iterator that points to the inserted element.
*
* This function will insert a default-constructed element before the
* specified location. You should consider using
* insert(position,value_type()) instead.
*
* @note This was deprecated in 3.2 and will be removed in 3.4. You must
* define @c _GLIBCPP_DEPRECATED to make this visible in 3.2; see
* c++config.h.
*/
iterator
insert(iterator __position)
{ return insert(__position, value_type()); }
#endif
/**
* @brief Inserts a number of copies of given data into the %deque.
* @param position An iterator into the %deque.
......@@ -1392,10 +1323,6 @@ namespace std
*/
void _M_push_back_aux(const value_type&);
void _M_push_front_aux(const value_type&);
#ifdef _GLIBCPP_DEPRECATED
void _M_push_back_aux();
void _M_push_front_aux();
#endif
void _M_pop_back_aux();
void _M_pop_front_aux();
//@}
......@@ -1459,11 +1386,6 @@ namespace std
_ForwardIterator __first, _ForwardIterator __last,
size_type __n);
#ifdef _GLIBCPP_DEPRECATED
// unused, see comment in implementation
iterator _M_insert_aux(iterator __pos);
#endif
//@{
/**
* @if maint
......
......@@ -702,23 +702,6 @@ namespace std
void
push_front(const value_type& __x) { this->insert(begin(), __x); }
#ifdef _GLIBCPP_DEPRECATED
/**
* @brief Add data to the front of the %list.
*
* This is a typical stack operation. The function creates a
* default-constructed element at the front of the %list. Due to the
* nature of a %list this operation can be done in constant time. You
* should consider using push_front(value_type()) instead.
*
* @note This was deprecated in 3.2 and will be removed in 3.4. You must
* define @c _GLIBCPP_DEPRECATED to make this visible in 3.2; see
* c++config.h.
*/
void
push_front() { this->insert(begin(), value_type()); }
#endif
/**
* @brief Removes first element.
*
......@@ -745,23 +728,6 @@ namespace std
void
push_back(const value_type& __x) { this->insert(end(), __x); }
#ifdef _GLIBCPP_DEPRECATED
/**
* @brief Add data to the end of the %list.
*
* This is a typical stack operation. The function creates a
* default-constructed element at the end of the %list. Due to the nature
* of a %list this operation can be done in constant time. You should
* consider using push_back(value_type()) instead.
*
* @note This was deprecated in 3.2 and will be removed in 3.4. You must
* define @c _GLIBCPP_DEPRECATED to make this visible in 3.2; see
* c++config.h.
*/
void
push_back() { this->insert(end(), value_type()); }
#endif
/**
* @brief Removes last element.
*
......@@ -794,26 +760,6 @@ namespace std
iterator
insert(iterator __position, const value_type& __x);
#ifdef _GLIBCPP_DEPRECATED
/**
* @brief Inserts an element into the %list.
* @param position An iterator into the %list.
* @return An iterator that points to the inserted element.
*
* This function will insert a default-constructed element before the
* specified location. You should consider using
* insert(position,value_type()) instead.
* Due to the nature of a %list this operation can be done in constant
* time, and does not invalidate iterators and references.
*
* @note This was deprecated in 3.2 and will be removed in 3.4. You must
* define @c _GLIBCPP_DEPRECATED to make this visible in 3.2; see
* c++config.h.
*/
iterator
insert(iterator __position) { return insert(__position, value_type()); }
#endif
/**
* @brief Inserts a number of copies of given data into the %list.
* @param position An iterator into the %list.
......
......@@ -631,28 +631,7 @@ namespace std
*/
iterator
insert(iterator __position, const value_type& __x);
#ifdef _GLIBCPP_DEPRECATED
/**
* @brief Inserts an element into the %vector.
* @param position An iterator into the %vector.
* @return An iterator that points to the inserted element.
*
* This function will insert a default-constructed element
* before the specified location. You should consider using
* insert(position,value_type()) instead. Note that this kind
* of operation could be expensive for a vector and if it is
* frequently used the user should consider using std::list.
*
* @note This was deprecated in 3.2 and will be removed in 3.4.
* You must define @c _GLIBCPP_DEPRECATED to make this visible
* in 3.2; see c++config.h.
*/
iterator
insert(iterator __position)
{ return insert(__position, value_type()); }
#endif
/**
* @brief Inserts a number of copies of given data into the %vector.
* @param position An iterator into the %vector.
......@@ -913,11 +892,6 @@ namespace std
// Called by insert(p,x)
void
_M_insert_aux(iterator __position, const value_type& __x);
#ifdef _GLIBCPP_DEPRECATED
// Unused now (same situation as in deque)
void _M_insert_aux(iterator __position);
#endif
};
......
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