Commit 78a53887 by Benjamin Kosnik Committed by Benjamin Kosnik

throw_allocator.h: Consistent @file markup.

2006-11-29  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/throw_allocator.h: Consistent @file markup.
	* include/ext/type_traits.h: Same.
	* include/debug/hash_map: Same.
	* include/debug/hash_multimap.h: Same.
	* include/debug/set.h: Same.
	* include/debug/hash_set.h: Same.
	* include/debug/formatter.h: Same.
	* include/debug/bitset: Same.
	* include/debug/set: Same.
	* include/debug/multiset.h: Same.
	* include/debug/safe_sequence.h: Same.
	* include/debug/hash_set: Same.
	* include/debug/functions.h: Same.
	* include/debug/safe_base.h: Same.
	* include/debug/hash_multiset.h: Same.
	* include/debug/safe_iterator.tcc: Same.
	* include/debug/vector: Same.
	* include/debug/map.h: Same.
	* include/debug/deque: Same.
	* include/debug/hash_map.h: Same.
	* include/debug/string: Same.
	* include/debug/macros.h: Same.
	* include/debug/list: Same.
	* include/debug/debug.h: Same.
	* include/debug/map: Same. 
	* include/debug/safe_iterator.h: Same.
	* include/debug/multimap.h: Same.
	* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
	* config/cpu/generic/atomicity_builtins/atomicity.h: Same.
	* config/cpu/generic/atomic_word.h: Same.
	* include/tr1/memory: Same.
	* include/tr1/random: Same.	
	* include/std/std_queue.h: Same.
	* include/std/std_iterator.h: Same.
	* include/std/std_bitset.h: Same.
	* include/std/std_set.h: Same.
	* include/std/std_vector.h: Same.
	* include/std/std_deque.h: Same.
	* include/std/std_utility.h: Same.
	* include/std/std_stack.h: Same.
	* include/std/std_string.h: Same.
	* include/std/std_list.h: Same.
	* include/std/std_map.h: Same.
	* libsupc++/typeinfo: Same.
	* libsupc++/exception: Same.
	* libsupc++/exception_defines.h: Same.
	* libsupc++/new: Same.
	
	* include/ext/bitmap_allocator.h: Change namespace __balloc to
	__detail.
	* src/bitmap_allocator.cc: Same.
	
	* include/bits/cpp_type_traits.h: Change __true_type and
	__false_type from global to namespace std scope.
	* include/ext/slist: Same.
	* include/ext/vstring.h: Same.
	* include/ext/vstring.tcc: Same.
	* include/ext/rc_string_base.h: Same.
	* include/ext/sso_string_base.h: Same.

	* include/bits/codecvt.h: Adjust markup so that correct namespace
	scope information is in all files.
	* include/bits/locale_facets.h: Same. Include ctype_base directly.
	* config/os/windiss/ctype_base.h: Add in namespace markup.
	* config/os/newlib/ctype_base.h: Same.
	* config/os/aix/ctype_base.h: Same.
	* config/os/vxworks/ctype_base.h: Same.
	* config/os/hpux/ctype_base.h: Same.
	* config/os/mingw32/ctype_base.h: Same.
	* config/os/gnu-linux/ctype_base.h: Same.
	* config/os/tpf/ctype_base.h: Same.
	* config/os/uclibc/ctype_base.h: Same.
	* config/os/djgpp/ctype_base.h: Same.
	* config/os/qnx/qnx6.1/ctype_base.h: Same.
	* config/os/bsd/netbsd/ctype_base.h: Same.
	* config/os/bsd/darwin/ctype_base.h: Same.
	* config/os/bsd/freebsd/ctype_base.h: Same.
	* config/os/irix/irix5.2/ctype_base.h: Same.
	* config/os/irix/irix6.5/ctype_base.h: Same.
	* config/os/solaris/solaris2.5/ctype_base.h: Same.
	* config/os/solaris/solaris2.6/ctype_base.h: Same.
	* config/os/solaris/solaris2.7/ctype_base.h: Same.
	* config/os/generic/ctype_base.h: Same.
	* include/tr1/mu_iterate.h: Same.
	* include/tr1/tuple: Same.
	* include/tr1/tuple_iterate.h: Same.
	* include/tr1/tuple_defs.h: Same.
	* include/tr1/random.tcc: Same.
	* include/tr1/functional: Same.
	* include/tr1/functional_iterate.h: Same.
	
	* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Line
	number changes.	
	* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
	* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
	* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.

	* docs/doxygen/user.cfg.in: Update to doxygen 1.5.1.
	* docs/html/17_intro/license.html: Updated info for generated docs.
	* docs/doxygen/guide.html: Adjust.
	* docs/doxygen/run_doxygen: Adjust.
	* docs/doxygen/mainpage.html: Same.
	* docs/doxygen/doxygroups.cc: Same.
	* docs/doxygen/Intro.3: Same.
	* docs/doxygen/tables.html: Same.

From-SVN: r119334
parent 3a7d5586
2006-11-29 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/throw_allocator.h: Consistent @file markup.
* include/ext/type_traits.h: Same.
* include/debug/hash_map: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/formatter.h: Same.
* include/debug/bitset: Same.
* include/debug/set: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_sequence.h: Same.
* include/debug/hash_set: Same.
* include/debug/functions.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/safe_iterator.tcc: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/hash_map.h: Same.
* include/debug/string: Same.
* include/debug/macros.h: Same.
* include/debug/list: Same.
* include/debug/debug.h: Same.
* include/debug/map: Same.
* include/debug/safe_iterator.h: Same.
* include/debug/multimap.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* config/cpu/generic/atomicity_builtins/atomicity.h: Same.
* config/cpu/generic/atomic_word.h: Same.
* include/tr1/memory: Same.
* include/tr1/random: Same.
* include/std/std_queue.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_utility.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_string.h: Same.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* libsupc++/typeinfo: Same.
* libsupc++/exception: Same.
* libsupc++/exception_defines.h: Same.
* libsupc++/new: Same.
* include/ext/bitmap_allocator.h: Change namespace __balloc to
__detail.
* src/bitmap_allocator.cc: Same.
* include/bits/cpp_type_traits.h: Change __true_type and
__false_type from global to namespace std scope.
* include/ext/slist: Same.
* include/ext/vstring.h: Same.
* include/ext/vstring.tcc: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/sso_string_base.h: Same.
* include/bits/codecvt.h: Adjust markup so that correct namespace
scope information is in all files.
* include/bits/locale_facets.h: Same. Include ctype_base directly.
* config/os/windiss/ctype_base.h: Add in namespace markup.
* config/os/newlib/ctype_base.h: Same.
* config/os/aix/ctype_base.h: Same.
* config/os/vxworks/ctype_base.h: Same.
* config/os/hpux/ctype_base.h: Same.
* config/os/mingw32/ctype_base.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
* config/os/tpf/ctype_base.h: Same.
* config/os/uclibc/ctype_base.h: Same.
* config/os/djgpp/ctype_base.h: Same.
* config/os/qnx/qnx6.1/ctype_base.h: Same.
* config/os/bsd/netbsd/ctype_base.h: Same.
* config/os/bsd/darwin/ctype_base.h: Same.
* config/os/bsd/freebsd/ctype_base.h: Same.
* config/os/irix/irix5.2/ctype_base.h: Same.
* config/os/irix/irix6.5/ctype_base.h: Same.
* config/os/solaris/solaris2.5/ctype_base.h: Same.
* config/os/solaris/solaris2.6/ctype_base.h: Same.
* config/os/solaris/solaris2.7/ctype_base.h: Same.
* config/os/generic/ctype_base.h: Same.
* include/tr1/mu_iterate.h: Same.
* include/tr1/tuple: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/tuple_defs.h: Same.
* include/tr1/random.tcc: Same.
* include/tr1/functional: Same.
* include/tr1/functional_iterate.h: Same.
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Line
number changes.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
* docs/doxygen/user.cfg.in: Update to doxygen 1.5.1.
* docs/html/17_intro/license.html: Updated info for generated docs.
* docs/doxygen/guide.html: Adjust.
* docs/doxygen/run_doxygen: Adjust.
* docs/doxygen/mainpage.html: Same.
* docs/doxygen/doxygroups.cc: Same.
* docs/doxygen/Intro.3: Same.
* docs/doxygen/tables.html: Same.
2006-11-26 Paolo Carlini <pcarlini@suse.de> 2006-11-26 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga) PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
......
...@@ -27,6 +27,10 @@ ...@@ -27,6 +27,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file ext/atomic_word.h
* This file is a GNU extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_ATOMIC_WORD_H #ifndef _GLIBCXX_ATOMIC_WORD_H
#define _GLIBCXX_ATOMIC_WORD_H 1 #define _GLIBCXX_ATOMIC_WORD_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file ext/atomicity.h
* This file is a GNU extension to the Standard C++ Library.
*/
#include <bits/c++config.h> #include <bits/c++config.h>
#include <bits/atomic_word.h> #include <bits/atomic_word.h>
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file ext/atomicity.h
* This file is a GNU extension to the Standard C++ Library.
*/
#include <ext/atomicity.h> #include <ext/atomicity.h>
#include <ext/concurrence.h> #include <ext/concurrence.h>
......
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h // Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = _ISPUNCT; static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT; static const mask alnum = _ISALPHA | _ISDIGIT;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -35,6 +35,9 @@ ...@@ -35,6 +35,9 @@
// 4.0 and all versions of the CVS managed file at: // 4.0 and all versions of the CVS managed file at:
// :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h // :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -70,5 +73,4 @@ ...@@ -70,5 +73,4 @@
#endif #endif
}; };
_GLIBCXX_END_NAMESPACE
...@@ -35,6 +35,9 @@ ...@@ -35,6 +35,9 @@
// 4.0 and all versions of the CVS managed file at: // 4.0 and all versions of the CVS managed file at:
// :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h // :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -72,5 +75,4 @@ ...@@ -72,5 +75,4 @@
#endif #endif
}; };
_GLIBCXX_END_NAMESPACE
...@@ -36,6 +36,9 @@ ...@@ -36,6 +36,9 @@
// anoncvs@anoncvs.netbsd.org:/cvsroot/basesrc/include/ctype.h // anoncvs@anoncvs.netbsd.org:/cvsroot/basesrc/include/ctype.h
// See www.netbsd.org for details of access. // See www.netbsd.org for details of access.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -56,3 +59,5 @@ ...@@ -56,3 +59,5 @@
static const mask punct = _P; static const mask punct = _P;
static const mask alnum = _U | _L | _N; static const mask alnum = _U | _L | _N;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -31,6 +31,9 @@ ...@@ -31,6 +31,9 @@
// ISO C++ 14882: 22.1 Locales // ISO C++ 14882: 22.1 Locales
// //
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
typedef unsigned short mask; typedef unsigned short mask;
...@@ -53,5 +56,4 @@ ...@@ -53,5 +56,4 @@
static const mask graph = __dj_ISALPHA | __dj_ISDIGIT | __dj_ISPUNCT; // Graphical static const mask graph = __dj_ISALPHA | __dj_ISDIGIT | __dj_ISPUNCT; // Graphical
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Default information, may not be appropriate for specific host. // Default information, may not be appropriate for specific host.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -54,5 +57,4 @@ ...@@ -54,5 +57,4 @@
static const mask alnum = (1 << 2) | (1 << 3); // alpha|digit static const mask alnum = (1 << 2) | (1 << 3); // alpha|digit
}; };
_GLIBCXX_END_NAMESPACE
...@@ -39,6 +39,8 @@ ...@@ -39,6 +39,8 @@
// Information as gleaned from /usr/include/ctype.h // Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype. /// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
...@@ -60,3 +62,5 @@ ...@@ -60,3 +62,5 @@
static const mask punct = _ISpunct; static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit; static const mask alnum = _ISalpha | _ISdigit;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Default information, may not be appropriate for specific host. // Default information, may not be appropriate for specific host.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = _ISPUNCT; static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT; static const mask alnum = _ISALPHA | _ISDIGIT;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h on irix 5.2 // Information as gleaned from /usr/include/ctype.h on irix 5.2
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = _P; static const mask punct = _P;
static const mask alnum = _U | _L | _N; static const mask alnum = _U | _L | _N;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h on irix 6.5 // Information as gleaned from /usr/include/ctype.h on irix 6.5
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = _ISpunct; static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit; static const mask alnum = _ISalpha | _ISdigit;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information, as gleaned from /mingw32/include/ctype.h. // Information, as gleaned from /mingw32/include/ctype.h.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -54,5 +57,4 @@ ...@@ -54,5 +57,4 @@
static const mask alnum = (_ALPHA | _DIGIT); static const mask alnum = (_ALPHA | _DIGIT);
}; };
_GLIBCXX_END_NAMESPACE
...@@ -35,6 +35,9 @@ ...@@ -35,6 +35,9 @@
// Support for Solaris 2.5.1 // Support for Solaris 2.5.1
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -55,3 +58,5 @@ ...@@ -55,3 +58,5 @@
static const mask punct = _P; static const mask punct = _P;
static const mask alnum = _U | _L | _N; static const mask alnum = _U | _L | _N;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h. // Information as gleaned from /usr/include/ctype.h.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = _PU; static const mask punct = _PU;
static const mask alnum = _DI | _LO | _UP | _XA; static const mask alnum = _DI | _LO | _UP | _XA;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h, for solaris2.5.1 // Information as gleaned from /usr/include/ctype.h, for solaris2.5.1
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = 020; static const mask punct = 020;
static const mask alnum = 01 | 02 | 04; static const mask alnum = 01 | 02 | 04;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -34,6 +34,9 @@ ...@@ -34,6 +34,9 @@
// Information as gleaned from /usr/include/ctype.h. Looks like this // Information as gleaned from /usr/include/ctype.h. Looks like this
// only works with solaris2.6. // only works with solaris2.6.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -54,3 +57,5 @@ ...@@ -54,3 +57,5 @@
static const mask punct = _ISPUNCT; static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT; static const mask alnum = _ISALPHA | _ISDIGIT;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -35,6 +35,9 @@ ...@@ -35,6 +35,9 @@
// only works with solaris2.7 and solaris2.8. Thanks for not changing // only works with solaris2.7 and solaris2.8. Thanks for not changing
// things, sun engineers! // things, sun engineers!
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -55,3 +58,5 @@ ...@@ -55,3 +58,5 @@
static const mask punct = _ISPUNCT; static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT; static const mask alnum = _ISALPHA | _ISDIGIT;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h // Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = _ISpunct; static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit; static const mask alnum = _ISalpha | _ISdigit;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -39,6 +39,8 @@ ...@@ -39,6 +39,8 @@
// Information as gleaned from /usr/include/ctype.h // Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype. /// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
...@@ -62,3 +64,5 @@ ...@@ -62,3 +64,5 @@
static const mask punct = _ISpunct; static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit; static const mask alnum = _ISalpha | _ISdigit;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Information extracted from target/h/ctype.h. // Information extracted from target/h/ctype.h.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -55,5 +58,4 @@ ...@@ -55,5 +58,4 @@
static const mask alnum = _C_UPPER | _C_LOWER | _C_NUMBER; static const mask alnum = _C_UPPER | _C_LOWER | _C_NUMBER;
}; };
_GLIBCXX_END_NAMESPACE
...@@ -33,6 +33,9 @@ ...@@ -33,6 +33,9 @@
// Default information, may not be appropriate for specific host. // Default information, may not be appropriate for specific host.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base struct ctype_base
{ {
// Non-standard typedefs. // Non-standard typedefs.
...@@ -53,3 +56,5 @@ ...@@ -53,3 +56,5 @@
static const mask punct = _P; static const mask punct = _P;
static const mask alnum = _U | _L | _N; static const mask alnum = _U | _L | _N;
}; };
_GLIBCXX_END_NAMESPACE
.\" t .\" t
.\" This man page is released under the FDL as part of libstdc++-v3. .\" This man page is released under the FDL as part of libstdc++.
.TH C++Intro 3 "20 May 2004" "GNU libstdc++-v3" "Standard C++ Library" .TH C++Intro 3 "20 May 2004" "GNU libstdc++" "Standard C++ Library"
.SH NAME .SH NAME
C++Intro \- Introduction to the GNU libstdc++-v3 man pages C++Intro \- Introduction to the GNU libstdc++ man pages
.SH DESCRIPTION .SH DESCRIPTION
This man page serves as a brief introduction to the GNU implementation of This man page serves as a brief introduction to the GNU implementation of
the Standard C++ Library. For a better introduction and more complete the Standard C++ Library. For a better introduction and more complete
documentation, see the documentation, see the
.B libstdc++-v3 .B libstdc++
homepage listed at the end. homepage listed at the end.
.P .P
All standard library entities are declared within All standard library entities are declared within
...@@ -109,7 +109,7 @@ lB lB. ...@@ -109,7 +109,7 @@ lB lB.
.TP .TP
.I libstdc++.a .I libstdc++.a
The library implementation in static archive form. If you did not configure The library implementation in static archive form. If you did not configure
libstdc++-v3 to use shared libraries, this will always be used. Otherwise libstdc++ to use shared libraries, this will always be used. Otherwise
it will only be used if the user requests it. it will only be used if the user requests it.
.TP .TP
.I libsupc++.a .I libsupc++.a
......
...@@ -17,26 +17,39 @@ ...@@ -17,26 +17,39 @@
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // //
/** @namespace std /** @namespace std
* @brief Everything defined by the ISO C++ Standard is within namespace std. * @brief Everything defined by the ISO C++ Standard is within
* namespace <a class="el" href="namespacestd.html">std</a>.
*/
/** @namespace std::__detail
* @brief Implementation details not part of the namespace <a class="el"
* href="namespacestd.html">std</a> interface.
*/ */
/** @namespace std::tr1 /** @namespace std::tr1
* @brief Everything defined by the TR1 is within namespace std::tr1. * @brief Everything defined by the ISO C++ TR1 is within namespace std::tr1.
*/
/** @namespace std::tr1::__detail
* @brief Implementation details not part of the namespace std::tr1 interface.
*/ */
/** @namespace __gnu_cxx /** @namespace __gnu_cxx
* @brief GNU extensions for public use. * @brief GNU extensions for public use.
*/ */
/** @namespace __gnu_cxx::balloc /** @namespace __gnu_cxx::__detail
* @brief Related to __gnu_cxx::bitmap_allocator. * @brief Implementation details not part of the namespace __gnu_cxx
* interface.
*/
/** @namespace __gnu_cxx::typelist
* @brief GNU typelist extensions for public compile-time use.
*/ */
/** @namespace __gnu_internal /** @namespace __gnu_internal
* @brief GNU implemenation details, not for public use. * @brief GNU implemenation details, not for public use or
* export. Used only when anonymous namespaces cannot be substituted.
*/ */
/** @namespace __gnu_debug /** @namespace __gnu_debug
* @brief GNU debug mode implemenation details. * @brief GNU debug mode classes for public use.
*/ */
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // //
/** @addtogroup SGIextensions STL extensions from SGI /** @addtogroup SGIextensions STL extensions from SGI
Because libstdc++-v3 based its implementation of the STL subsections of Because libstdc++ based its implementation of the STL subsections of
the library on the SGI 3.3 implementation, we inherited their extensions the library on the SGI 3.3 implementation, we inherited their extensions
as well. as well.
...@@ -118,9 +131,10 @@ All associative containers must meet certain requirements, summarized in ...@@ -118,9 +131,10 @@ All associative containers must meet certain requirements, summarized in
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // //
/** @namespace abi /** @namespace abi
* @brief The cross-vendor C++ Application Binary Interface. * @brief The cross-vendor C++ Application Binary Interface. A
* namespace alias to __cxxabiv1.
* *
* A brief overview of an ABI is given in the libstdc++-v3 FAQ, question * A brief overview of an ABI is given in the libstdc++ FAQ, question
* 5.8 (you may have a copy of the FAQ locally, or you can view the online * 5.8 (you may have a copy of the FAQ locally, or you can view the online
* version at http://gcc.gnu.org/onlinedocs/libstdc++/faq/index.html#5_8). * version at http://gcc.gnu.org/onlinedocs/libstdc++/faq/index.html#5_8).
* *
......
...@@ -4,15 +4,15 @@ ...@@ -4,15 +4,15 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Build and Writing Guide for libstdc++-v3 Doxygen</title> <title>Build and Writing Guide for libstdc++ Doxygen</title>
<link href="style.css" rel="stylesheet" type="text/css"> <link href="style.css" rel="stylesheet" type="text/css">
</head> </head>
<body bgcolor="#ffffff"> <body bgcolor="#ffffff">
<h1>libstdc++-v3 Source Documentation</h1> <h1>libstdc++ Source Documentation</h1>
<p>This file is docs/doxygen/guide.html in the libstdc++-v3 source tree. It <p>This file is docs/doxygen/guide.html in the libstdc++ source tree. It
is not included in the generated pages (no real point to doing that). is not included in the generated pages (no real point to doing that).
</p> </p>
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
<a name="creating"><h2>Creating the pages</h2></a> <a name="creating"><h2>Creating the pages</h2></a>
<p>The Makefile rules <code>'make doxygen'</code>, <p>The Makefile rules <code>'make doxygen'</code>,
<code>'make doxygen-maint'</code>, and <code>'make doxygen-man'</code> <code>'make doxygen-maint'</code>, and <code>'make doxygen-man'</code>
in the libstdc++-v3 build directory generate the user-level HTML docs, the in the libstdc++ build directory generate the user-level HTML docs, the
maintainer-level HTML docs, and the man pages, respectively. Prerequisite maintainer-level HTML docs, and the man pages, respectively. Prerequisite
tools are Bash 2.x, tools are Bash 2.x,
<a href="http://www.doxygen.org/"> <a href="http://www.doxygen.org/">
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
</p> </p>
<a name="writing"><h2>Writing the markup</h2></a> <a name="writing"><h2>Writing the markup</h2></a>
<p>In general, libstdc++-v3 files should be formatted according to the GNU <p>In general, libstdc++ files should be formatted according to the GNU
C++ Coding Standard rules found in the file C++ Coding Standard rules found in the file
<a href="http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/C++STYLE">C++STYLE</a>. <a href="http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/C++STYLE">C++STYLE</a>.
Before any doxygen-specific formatting tweaks are made, please try to make Before any doxygen-specific formatting tweaks are made, please try to make
......
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html> <html>
<head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>libstdc++-v3 Source: Main Index</title> <title>libstdc++ Source: Main Index</title>
<link href="style.css" rel="stylesheet" type="text/css"> <link href="style.css" rel="stylesheet" type="text/css">
</head> </head>
...@@ -21,13 +21,13 @@ ...@@ -21,13 +21,13 @@
Tags actually work like they're supposed to in HTML. Tags actually work like they're supposed to in HTML.
--> -->
<h1>libstdc++-v3 Source Documentation</h1> <h1>libstdc++ Source Documentation</h1>
<h2>Documentation Overview</h2> <h2>Documentation Overview</h2>
<p class="smallertext">@LEVEL@-level docs, generated @DATE@.</p> <p class="smallertext">@LEVEL@-level docs, generated @DATE@.</p>
<p>There are two types of documentation for libstdc++-v3. One is the <p>There are two types of documentation for libstdc++. One is the
distribution documentation, which can be read online at distribution documentation, which can be read online at
<a href="http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html">http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html</a> <a href="http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html">http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html</a>
or offline from docs/html/documentation.html in the library source or offline from docs/html/documentation.html in the library source
...@@ -45,11 +45,11 @@ ...@@ -45,11 +45,11 @@
<p>Here are entry points to all the pages generated by Doxygen: <p>Here are entry points to all the pages generated by Doxygen:
<ul> <ul>
<li><a href="modules.html">Modules</a> <li><a href="modules.html">Modules</a>
<li><a href="namespaces.html">Namespace List</a>
<li><a href="hierarchy.html">Class List</a> <li><a href="hierarchy.html">Class List</a>
<li><a href="annotated.html">Class Annotated List</a> <li><a href="annotated.html">Class Annotated List</a>
<li><a href="classes.html">Class Alphabetical Index</a> <li><a href="classes.html">Class Alphabetical Index</a>
<li><a href="globals_func.html">Function Alphabetical List</a> <li><a href="globals_func.html">Function Alphabetical List</a>
<li><a href="namespaces.html">Namespace List</a>
<li><a href="files.html">Source File List</a> <li><a href="files.html">Source File List</a>
<li><a href="todo.html">TODO List</a> (This is incomplete... how ironic.) <li><a href="todo.html">TODO List</a> (This is incomplete... how ironic.)
</ul> </ul>
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
create (and write) the pages. create (and write) the pages.
<h2>License, Copyright, and Other Lawyerly Verbosity</h2> <h2>License, Copyright, and Other Lawyerly Verbosity</h2>
<p>The libstdc++-v3 documentation is released under <p>The libstdc++ documentation is released under
<a href="http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/license.html"> <a href="http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/license.html">
these terms</a>. these terms</a>.
</p> </p>
......
...@@ -155,6 +155,7 @@ fi ...@@ -155,6 +155,7 @@ fi
cd $builddir cd $builddir
sed -e "s=@outdir@=${outdir}=g" \ sed -e "s=@outdir@=${outdir}=g" \
-e "s=@srcdir@=${srcdir}=g" \ -e "s=@srcdir@=${srcdir}=g" \
-e "s=@builddir@=${builddir}=g" \
-e "s=@host_alias@=${host_alias}=g" \ -e "s=@host_alias@=${host_alias}=g" \
-e "s=@html_output_dir@=html_${mode}=" \ -e "s=@html_output_dir@=html_${mode}=" \
-e "s=@enabled_sections@=${enabled_sections}=" \ -e "s=@enabled_sections@=${enabled_sections}=" \
......
...@@ -635,7 +635,7 @@ examples of the latter are multiset and multimap. ...@@ -635,7 +635,7 @@ examples of the latter are multiset and multimap.
<hr /> <hr />
<p class="smallertext"><em> <p class="smallertext"><em>
See <a href="mainpage.html">mainpage.html</a> for copying conditions. See <a href="mainpage.html">mainpage.html</a> for copying conditions.
See <a href="http://gcc.gnu.org/libstdc++/">the libstdc++-v3 homepage</a> See <a href="http://gcc.gnu.org/libstdc++/">the libstdc++ homepage</a>
for more information. for more information.
</em></p> </em></p>
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<meta name="KEYWORDS" content="libstdc++, license, licence" /> <meta name="KEYWORDS" content="libstdc++, license, licence" />
<meta name="DESCRIPTION" content="Copying restrictions for libstdc++." /> <meta name="DESCRIPTION" content="Copying restrictions for libstdc++." />
<meta name="GENERATOR" content="vi and eight fingers" /> <meta name="GENERATOR" content="vi and eight fingers" />
<title>libstdc++-v3 copying</title> <title>libstdc++ copying</title>
<link rel="StyleSheet" href="../lib3styles.css" type="text/css" /> <link rel="StyleSheet" href="../lib3styles.css" type="text/css" />
<link rel="Start" rev="Copyright" href="../documentation.html" type="text/html" <link rel="Start" rev="Copyright" href="../documentation.html" type="text/html"
title="GNU C++ Standard Library" /> title="GNU C++ Standard Library" />
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<h1 class="centered"><a name="top">Licenses for the Library</a></h1> <h1 class="centered"><a name="top">Licenses for the Library</a></h1>
<p>There are two licenses affecting GNU libstdc++-v3: one for the code, and <p>There are two licenses affecting GNU libstdc++: one for the code, and
one for the documentation. Here we will describe both of them, and try one for the documentation. Here we will describe both of them, and try
to answer some of the widespread questions. If you have more questions, to answer some of the widespread questions. If you have more questions,
ask the FSF or the ask the FSF or the
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
<h2>The Code: Runtime GPL</h2> <h2>The Code: Runtime GPL</h2>
<p>The source code of libstdc++-v3 is distributed under version 2 of the <p>The source code of libstdc++ is distributed under version 2 of the
<a href="COPYING">GNU General Public License</a>, with the so-called <a href="COPYING">GNU General Public License</a>, with the so-called
&quot;runtime exception,&quot; as follows (or see any header or &quot;runtime exception,&quot; as follows (or see any header or
implementation file): implementation file):
...@@ -80,10 +80,10 @@ ...@@ -80,10 +80,10 @@
<hr /> <hr />
<h2>The Docs: FDL</h2> <h2>The Docs: GPL, FDL</h2>
<p>The documentation shipped with the library and made available over the <p>The documentation shipped with the library and made available over the
web, including the pages generated from source comments, are copyrighted web, excluding the pages generated from source comments, are copyrighted
by the Free Software Foundation, and placed under by the Free Software Foundation, and placed under
the <a href="COPYING.DOC">GNU Free Documentation License version 1.1</a>. the <a href="COPYING.DOC">GNU Free Documentation License version 1.1</a>.
There are no Front-Cover Texts, no Back-Cover Texts, and There are no Front-Cover Texts, no Back-Cover Texts, and
...@@ -91,6 +91,12 @@ ...@@ -91,6 +91,12 @@
no Invariant Sections. no Invariant Sections.
</p> </p>
<p> For documentation generated by doxygen or other automated tools
via processing source code comments and markup, the original source
code license applies to the generated files. Thus, the doxygen
documents are licensed GPL.
</p>
<p>If you plan on making copies of the documentation, please let us know. <p>If you plan on making copies of the documentation, please let us know.
We can probably offer suggestions. We can probably offer suggestions.
</p> </p>
......
...@@ -44,6 +44,8 @@ ...@@ -44,6 +44,8 @@
#pragma GCC system_header #pragma GCC system_header
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Empty base class for codecvt facet [22.2.1.5]. /// @brief Empty base class for codecvt facet [22.2.1.5].
class codecvt_base class codecvt_base
{ {
...@@ -467,4 +469,6 @@ ...@@ -467,4 +469,6 @@
~codecvt_byname() { } ~codecvt_byname() { }
}; };
_GLIBCXX_END_NAMESPACE
#endif // _CODECVT_H #endif // _CODECVT_H
...@@ -78,9 +78,6 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -78,9 +78,6 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_GLIBCXX_END_NAMESPACE _GLIBCXX_END_NAMESPACE
struct __true_type { };
struct __false_type { };
_GLIBCXX_BEGIN_NAMESPACE(std) _GLIBCXX_BEGIN_NAMESPACE(std)
namespace __detail namespace __detail
...@@ -96,6 +93,10 @@ namespace __detail ...@@ -96,6 +93,10 @@ namespace __detail
__two& __test_type(...); __two& __test_type(...);
} // namespace __detail } // namespace __detail
struct __true_type { };
struct __false_type { };
template<bool> template<bool>
struct __truth_type struct __truth_type
{ typedef __false_type __type; }; { typedef __false_type __type; };
......
...@@ -44,6 +44,7 @@ ...@@ -44,6 +44,7 @@
#include <ctime> // For struct tm #include <ctime> // For struct tm
#include <cwctype> // For wctype_t #include <cwctype> // For wctype_t
#include <bits/ctype_base.h>
#include <iosfwd> #include <iosfwd>
#include <bits/ios_base.h> // For ios_base, ios_base::iostate #include <bits/ios_base.h> // For ios_base, ios_base::iostate
#include <streambuf> #include <streambuf>
...@@ -130,7 +131,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) ...@@ -130,7 +131,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// 22.2.1.1 Template class ctype // 22.2.1.1 Template class ctype
// Include host and configuration specific ctype enums for ctype_base. // Include host and configuration specific ctype enums for ctype_base.
#include <bits/ctype_base.h>
// Common base for ctype<_CharT>. // Common base for ctype<_CharT>.
/** /**
...@@ -1530,8 +1530,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std) ...@@ -1530,8 +1530,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
template<> template<>
ctype_byname<wchar_t>::ctype_byname(const char*, size_t refs); ctype_byname<wchar_t>::ctype_byname(const char*, size_t refs);
// 22.2.1.5 Template class codecvt _GLIBCXX_END_NAMESPACE
#include <bits/codecvt.h>
// 22.2.1.5 Template class codecvt
#include <bits/codecvt.h>
_GLIBCXX_BEGIN_NAMESPACE(std)
// 22.2.2 The numeric category. // 22.2.2 The numeric category.
class __num_base class __num_base
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/bitset
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_BITSET #ifndef _GLIBCXX_DEBUG_BITSET
#define _GLIBCXX_DEBUG_BITSET #define _GLIBCXX_DEBUG_BITSET
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/debug.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_MACRO_SWITCH_H #ifndef _GLIBCXX_DEBUG_MACRO_SWITCH_H
#define _GLIBCXX_DEBUG_MACRO_SWITCH_H 1 #define _GLIBCXX_DEBUG_MACRO_SWITCH_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/deque
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_DEQUE #ifndef _GLIBCXX_DEBUG_DEQUE
#define _GLIBCXX_DEBUG_DEQUE 1 #define _GLIBCXX_DEBUG_DEQUE 1
......
...@@ -27,6 +27,10 @@ ...@@ -27,6 +27,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/formatter.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_FORMATTER_H #ifndef _GLIBCXX_DEBUG_FORMATTER_H
#define _GLIBCXX_DEBUG_FORMATTER_H 1 #define _GLIBCXX_DEBUG_FORMATTER_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/functions.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_FUNCTIONS_H #ifndef _GLIBCXX_DEBUG_FUNCTIONS_H
#define _GLIBCXX_DEBUG_FUNCTIONS_H 1 #define _GLIBCXX_DEBUG_FUNCTIONS_H 1
...@@ -109,7 +113,7 @@ namespace __gnu_debug ...@@ -109,7 +113,7 @@ namespace __gnu_debug
*/ */
template<typename _Integral> template<typename _Integral>
inline bool inline bool
__valid_range_aux(const _Integral&, const _Integral&, __true_type) __valid_range_aux(const _Integral&, const _Integral&, std::__true_type)
{ return true; } { return true; }
/** We have iterators, so figure out what kind of iterators that are /** We have iterators, so figure out what kind of iterators that are
...@@ -118,7 +122,7 @@ namespace __gnu_debug ...@@ -118,7 +122,7 @@ namespace __gnu_debug
template<typename _InputIterator> template<typename _InputIterator>
inline bool inline bool
__valid_range_aux(const _InputIterator& __first, __valid_range_aux(const _InputIterator& __first,
const _InputIterator& __last, __false_type) const _InputIterator& __last, std::__false_type)
{ {
typedef typename std::iterator_traits<_InputIterator>::iterator_category typedef typename std::iterator_traits<_InputIterator>::iterator_category
_Category; _Category;
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/hash_map
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_HASH_MAP #ifndef _GLIBCXX_DEBUG_HASH_MAP
#define _GLIBCXX_DEBUG_HASH_MAP 1 #define _GLIBCXX_DEBUG_HASH_MAP 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/hash_map.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_HASH_MAP_H #ifndef _GLIBCXX_DEBUG_HASH_MAP_H
#define _GLIBCXX_DEBUG_HASH_MAP_H 1 #define _GLIBCXX_DEBUG_HASH_MAP_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/hash_multimap.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_HASH_MULTIMAP_H #ifndef _GLIBCXX_DEBUG_HASH_MULTIMAP_H
#define _GLIBCXX_DEBUG_HASH_MULTIMAP_H 1 #define _GLIBCXX_DEBUG_HASH_MULTIMAP_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/hash_multiset.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_HASH_MULTISET_H #ifndef _GLIBCXX_DEBUG_HASH_MULTISET_H
#define _GLIBCXX_DEBUG_HASH_MULTISET_H 1 #define _GLIBCXX_DEBUG_HASH_MULTISET_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/hash_set
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_HASH_SET #ifndef _GLIBCXX_DEBUG_HASH_SET
#define _GLIBCXX_DEBUG_HASH_SET 1 #define _GLIBCXX_DEBUG_HASH_SET 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/hash_set.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_HASH_SET_H #ifndef _GLIBCXX_DEBUG_HASH_SET_H
#define _GLIBCXX_DEBUG_HASH_SET_H 1 #define _GLIBCXX_DEBUG_HASH_SET_H 1
......
...@@ -28,6 +28,37 @@ ...@@ -28,6 +28,37 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
// Free Software Foundation, Inc.
//
// 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
// terms of the GNU General Public License as published by the
// Free Software Foundation; either version 2, or (at your option)
// any later version.
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License along
// with this library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file debug/list
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_LIST #ifndef _GLIBCXX_DEBUG_LIST
#define _GLIBCXX_DEBUG_LIST 1 #define _GLIBCXX_DEBUG_LIST 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/macros.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_MACROS_H #ifndef _GLIBCXX_DEBUG_MACROS_H
#define _GLIBCXX_DEBUG_MACROS_H 1 #define _GLIBCXX_DEBUG_MACROS_H 1
......
// Debugging map/multimap implementation -*- C++ -*- // Debugging map/multimap implementation -*- C++ -*-
// Copyright (C) 2003 // Copyright (C) 2003, 2006
// 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
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/map
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_MAP #ifndef _GLIBCXX_DEBUG_MAP
#define _GLIBCXX_DEBUG_MAP 1 #define _GLIBCXX_DEBUG_MAP 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/map.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_MAP_H #ifndef _GLIBCXX_DEBUG_MAP_H
#define _GLIBCXX_DEBUG_MAP_H 1 #define _GLIBCXX_DEBUG_MAP_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/multimap.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_MULTIMAP_H #ifndef _GLIBCXX_DEBUG_MULTIMAP_H
#define _GLIBCXX_DEBUG_MULTIMAP_H 1 #define _GLIBCXX_DEBUG_MULTIMAP_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/multiset.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_MULTISET_H #ifndef _GLIBCXX_DEBUG_MULTISET_H
#define _GLIBCXX_DEBUG_MULTISET_H 1 #define _GLIBCXX_DEBUG_MULTISET_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/safe_base.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_SAFE_BASE_H #ifndef _GLIBCXX_DEBUG_SAFE_BASE_H
#define _GLIBCXX_DEBUG_SAFE_BASE_H 1 #define _GLIBCXX_DEBUG_SAFE_BASE_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/safe_iterator.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_SAFE_ITERATOR_H #ifndef _GLIBCXX_DEBUG_SAFE_ITERATOR_H
#define _GLIBCXX_DEBUG_SAFE_ITERATOR_H 1 #define _GLIBCXX_DEBUG_SAFE_ITERATOR_H 1
......
...@@ -28,9 +28,8 @@ ...@@ -28,9 +28,8 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file safe_iterator.tcc /** @file debug/safe_iterator.tcc
* This is an internal header file, included by other library headers. * This file is a GNU debug extension to the Standard C++ Library.
* You should not attempt to use it directly.
*/ */
#ifndef _GLIBCXX_DEBUG_SAFE_ITERATOR_TCC #ifndef _GLIBCXX_DEBUG_SAFE_ITERATOR_TCC
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/safe_sequence.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_SAFE_SEQUENCE_H #ifndef _GLIBCXX_DEBUG_SAFE_SEQUENCE_H
#define _GLIBCXX_DEBUG_SAFE_SEQUENCE_H 1 #define _GLIBCXX_DEBUG_SAFE_SEQUENCE_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/set
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_SET #ifndef _GLIBCXX_DEBUG_SET
#define _GLIBCXX_DEBUG_SET 1 #define _GLIBCXX_DEBUG_SET 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/set.h
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_SET_H #ifndef _GLIBCXX_DEBUG_SET_H
#define _GLIBCXX_DEBUG_SET_H 1 #define _GLIBCXX_DEBUG_SET_H 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/string
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_STRING #ifndef _GLIBCXX_DEBUG_STRING
#define _GLIBCXX_DEBUG_STRING 1 #define _GLIBCXX_DEBUG_STRING 1
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file debug/vector
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_VECTOR #ifndef _GLIBCXX_DEBUG_VECTOR
#define _GLIBCXX_DEBUG_VECTOR 1 #define _GLIBCXX_DEBUG_VECTOR 1
......
...@@ -53,7 +53,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -53,7 +53,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
using std::size_t; using std::size_t;
using std::ptrdiff_t; using std::ptrdiff_t;
namespace __balloc namespace __detail
{ {
/** @class __mini_vector bitmap_allocator.h bitmap_allocator.h /** @class __mini_vector bitmap_allocator.h bitmap_allocator.h
* *
...@@ -361,7 +361,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -361,7 +361,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
: public std::unary_function<typename std::pair<_Tp, _Tp>, bool> : public std::unary_function<typename std::pair<_Tp, _Tp>, bool>
{ {
typedef typename std::pair<_Tp, _Tp> _Block_pair; typedef typename std::pair<_Tp, _Tp> _Block_pair;
typedef typename __balloc::__mini_vector<_Block_pair> _BPVector; typedef typename __detail::__mini_vector<_Block_pair> _BPVector;
typedef typename _BPVector::difference_type _Counter_type; typedef typename _BPVector::difference_type _Counter_type;
size_t* _M_pbitmap; size_t* _M_pbitmap;
...@@ -385,11 +385,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -385,11 +385,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// store, then there is definitely no space for another single // store, then there is definitely no space for another single
// object, so just return false. // object, so just return false.
_Counter_type __diff = _Counter_type __diff =
__gnu_cxx::__balloc::__num_bitmaps(__bp); __gnu_cxx::__detail::__num_bitmaps(__bp);
if (*(reinterpret_cast<size_t*> if (*(reinterpret_cast<size_t*>
(__bp.first) - (__diff + 1)) (__bp.first) - (__diff + 1))
== __gnu_cxx::__balloc::__num_blocks(__bp)) == __gnu_cxx::__detail::__num_blocks(__bp))
return false; return false;
size_t* __rover = reinterpret_cast<size_t*>(__bp.first) - 1; size_t* __rover = reinterpret_cast<size_t*>(__bp.first) - 1;
...@@ -428,7 +428,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -428,7 +428,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _Tp> template<typename _Tp>
class _Bitmap_counter class _Bitmap_counter
{ {
typedef typename __balloc::__mini_vector<typename std::pair<_Tp, _Tp> > typedef typename __detail::__mini_vector<typename std::pair<_Tp, _Tp> >
_BPVector; _BPVector;
typedef typename _BPVector::size_type _Index_type; typedef typename _BPVector::size_type _Index_type;
typedef _Tp pointer; typedef _Tp pointer;
...@@ -534,7 +534,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -534,7 +534,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
size_t __mask = 1 << __pos; size_t __mask = 1 << __pos;
*__pbmap |= __mask; *__pbmap |= __mask;
} }
} // namespace __balloc } // namespace __detail
/** @brief Generic Version of the bsf instruction. /** @brief Generic Version of the bsf instruction.
*/ */
...@@ -550,7 +550,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -550,7 +550,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
class free_list class free_list
{ {
typedef size_t* value_type; typedef size_t* value_type;
typedef __balloc::__mini_vector<value_type> vector_type; typedef __detail::__mini_vector<value_type> vector_type;
typedef vector_type::iterator iterator; typedef vector_type::iterator iterator;
typedef __mutex __mutex_type; typedef __mutex __mutex_type;
...@@ -615,7 +615,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -615,7 +615,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
// Just add the block to the list of free lists unconditionally. // Just add the block to the list of free lists unconditionally.
iterator __temp = __gnu_cxx::__balloc::__lower_bound iterator __temp = __gnu_cxx::__detail::__lower_bound
(__free_list.begin(), __free_list.end(), (__free_list.begin(), __free_list.end(),
*__addr, _LT_pointer_compare()); *__addr, _LT_pointer_compare());
...@@ -746,7 +746,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -746,7 +746,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
typedef typename std::pair<_Alloc_block*, _Alloc_block*> _Block_pair; typedef typename std::pair<_Alloc_block*, _Alloc_block*> _Block_pair;
typedef typename typedef typename
__balloc::__mini_vector<_Block_pair> _BPVector; __detail::__mini_vector<_Block_pair> _BPVector;
#if defined _GLIBCXX_DEBUG #if defined _GLIBCXX_DEBUG
// Complexity: O(lg(N)). Where, N is the number of block of size // Complexity: O(lg(N)). Where, N is the number of block of size
...@@ -755,13 +755,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -755,13 +755,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_S_check_for_free_blocks() throw() _S_check_for_free_blocks() throw()
{ {
typedef typename typedef typename
__gnu_cxx::__balloc::_Ffit_finder<_Alloc_block*> _FFF; __gnu_cxx::__detail::_Ffit_finder<_Alloc_block*> _FFF;
_FFF __fff; _FFF __fff;
typedef typename _BPVector::iterator _BPiter; typedef typename _BPVector::iterator _BPiter;
_BPiter __bpi = _BPiter __bpi =
__gnu_cxx::__balloc::__find_if __gnu_cxx::__detail::__find_if
(_S_mem_blocks.begin(), _S_mem_blocks.end(), (_S_mem_blocks.begin(), _S_mem_blocks.end(),
__gnu_cxx::__balloc::_Functor_Ref<_FFF>(__fff)); __gnu_cxx::__detail::_Functor_Ref<_FFF>(__fff));
_GLIBCXX_DEBUG_ASSERT(__bpi == _S_mem_blocks.end()); _GLIBCXX_DEBUG_ASSERT(__bpi == _S_mem_blocks.end());
} }
...@@ -786,7 +786,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -786,7 +786,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#endif #endif
const size_t __num_bitmaps = (_S_block_size const size_t __num_bitmaps = (_S_block_size
/ size_t(__balloc::bits_per_block)); / size_t(__detail::bits_per_block));
const size_t __size_to_allocate = sizeof(size_t) const size_t __size_to_allocate = sizeof(size_t)
+ _S_block_size * sizeof(_Alloc_block) + _S_block_size * sizeof(_Alloc_block)
+ __num_bitmaps * sizeof(size_t); + __num_bitmaps * sizeof(size_t);
...@@ -820,7 +820,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -820,7 +820,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
static _BPVector _S_mem_blocks; static _BPVector _S_mem_blocks;
static size_t _S_block_size; static size_t _S_block_size;
static __gnu_cxx::__balloc:: static __gnu_cxx::__detail::
_Bitmap_counter<_Alloc_block*> _S_last_request; _Bitmap_counter<_Alloc_block*> _S_last_request;
static typename _BPVector::size_type _S_last_dealloc_index; static typename _BPVector::size_type _S_last_dealloc_index;
#if defined __GTHREADS #if defined __GTHREADS
...@@ -872,13 +872,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -872,13 +872,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
{ {
// Fall Back to First Fit algorithm. // Fall Back to First Fit algorithm.
typedef typename typedef typename
__gnu_cxx::__balloc::_Ffit_finder<_Alloc_block*> _FFF; __gnu_cxx::__detail::_Ffit_finder<_Alloc_block*> _FFF;
_FFF __fff; _FFF __fff;
typedef typename _BPVector::iterator _BPiter; typedef typename _BPVector::iterator _BPiter;
_BPiter __bpi = _BPiter __bpi =
__gnu_cxx::__balloc::__find_if __gnu_cxx::__detail::__find_if
(_S_mem_blocks.begin(), _S_mem_blocks.end(), (_S_mem_blocks.begin(), _S_mem_blocks.end(),
__gnu_cxx::__balloc::_Functor_Ref<_FFF>(__fff)); __gnu_cxx::__detail::_Functor_Ref<_FFF>(__fff));
if (__bpi != _S_mem_blocks.end()) if (__bpi != _S_mem_blocks.end())
{ {
...@@ -886,7 +886,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -886,7 +886,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// the right as 0, meaning Allocated. This bit is obtained // the right as 0, meaning Allocated. This bit is obtained
// by calling _M_get() on __fff. // by calling _M_get() on __fff.
size_t __nz_bit = _Bit_scan_forward(*__fff._M_get()); size_t __nz_bit = _Bit_scan_forward(*__fff._M_get());
__balloc::__bit_allocate(__fff._M_get(), __nz_bit); __detail::__bit_allocate(__fff._M_get(), __nz_bit);
_S_last_request._M_reset(__bpi - _S_mem_blocks.begin()); _S_last_request._M_reset(__bpi - _S_mem_blocks.begin());
...@@ -896,7 +896,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -896,7 +896,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
size_t* __puse_count = size_t* __puse_count =
reinterpret_cast<size_t*> reinterpret_cast<size_t*>
(__bpi->first) (__bpi->first)
- (__gnu_cxx::__balloc::__num_bitmaps(*__bpi) + 1); - (__gnu_cxx::__detail::__num_bitmaps(*__bpi) + 1);
++(*__puse_count); ++(*__puse_count);
return __ret; return __ret;
...@@ -918,14 +918,14 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -918,14 +918,14 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// _S_last_request holds a pointer to a valid bit map, that // _S_last_request holds a pointer to a valid bit map, that
// points to a free block in memory. // points to a free block in memory.
size_t __nz_bit = _Bit_scan_forward(*_S_last_request._M_get()); size_t __nz_bit = _Bit_scan_forward(*_S_last_request._M_get());
__balloc::__bit_allocate(_S_last_request._M_get(), __nz_bit); __detail::__bit_allocate(_S_last_request._M_get(), __nz_bit);
pointer __ret = reinterpret_cast<pointer> pointer __ret = reinterpret_cast<pointer>
(_S_last_request._M_base() + _S_last_request._M_offset() + __nz_bit); (_S_last_request._M_base() + _S_last_request._M_offset() + __nz_bit);
size_t* __puse_count = reinterpret_cast<size_t*> size_t* __puse_count = reinterpret_cast<size_t*>
(_S_mem_blocks[_S_last_request._M_where()].first) (_S_mem_blocks[_S_last_request._M_where()].first)
- (__gnu_cxx::__balloc:: - (__gnu_cxx::__detail::
__num_bitmaps(_S_mem_blocks[_S_last_request._M_where()]) + 1); __num_bitmaps(_S_mem_blocks[_S_last_request._M_where()]) + 1);
++(*__puse_count); ++(*__puse_count);
...@@ -957,7 +957,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -957,7 +957,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_GLIBCXX_DEBUG_ASSERT(_S_last_dealloc_index >= 0); _GLIBCXX_DEBUG_ASSERT(_S_last_dealloc_index >= 0);
if (__gnu_cxx::__balloc::_Inclusive_between<_Alloc_block*> if (__gnu_cxx::__detail::_Inclusive_between<_Alloc_block*>
(__real_p) (_S_mem_blocks[_S_last_dealloc_index])) (__real_p) (_S_mem_blocks[_S_last_dealloc_index]))
{ {
_GLIBCXX_DEBUG_ASSERT(_S_last_dealloc_index _GLIBCXX_DEBUG_ASSERT(_S_last_dealloc_index
...@@ -969,10 +969,10 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -969,10 +969,10 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
else else
{ {
_Iterator _iter = __gnu_cxx::__balloc:: _Iterator _iter = __gnu_cxx::__detail::
__find_if(_S_mem_blocks.begin(), __find_if(_S_mem_blocks.begin(),
_S_mem_blocks.end(), _S_mem_blocks.end(),
__gnu_cxx::__balloc:: __gnu_cxx::__detail::
_Inclusive_between<_Alloc_block*>(__real_p)); _Inclusive_between<_Alloc_block*>(__real_p));
_GLIBCXX_DEBUG_ASSERT(_iter != _S_mem_blocks.end()); _GLIBCXX_DEBUG_ASSERT(_iter != _S_mem_blocks.end());
...@@ -984,16 +984,16 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -984,16 +984,16 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// Get the position of the iterator that has been found. // Get the position of the iterator that has been found.
const size_t __rotate = (__displacement const size_t __rotate = (__displacement
% size_t(__balloc::bits_per_block)); % size_t(__detail::bits_per_block));
size_t* __bitmapC = size_t* __bitmapC =
reinterpret_cast<size_t*> reinterpret_cast<size_t*>
(_S_mem_blocks[__diff].first) - 1; (_S_mem_blocks[__diff].first) - 1;
__bitmapC -= (__displacement / size_t(__balloc::bits_per_block)); __bitmapC -= (__displacement / size_t(__detail::bits_per_block));
__balloc::__bit_free(__bitmapC, __rotate); __detail::__bit_free(__bitmapC, __rotate);
size_t* __puse_count = reinterpret_cast<size_t*> size_t* __puse_count = reinterpret_cast<size_t*>
(_S_mem_blocks[__diff].first) (_S_mem_blocks[__diff].first)
- (__gnu_cxx::__balloc::__num_bitmaps(_S_mem_blocks[__diff]) + 1); - (__gnu_cxx::__detail::__num_bitmaps(_S_mem_blocks[__diff]) + 1);
_GLIBCXX_DEBUG_ASSERT(*__puse_count != 0); _GLIBCXX_DEBUG_ASSERT(*__puse_count != 0);
...@@ -1115,14 +1115,14 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -1115,14 +1115,14 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _Tp> template<typename _Tp>
size_t bitmap_allocator<_Tp>::_S_block_size = size_t bitmap_allocator<_Tp>::_S_block_size =
2 * size_t(__balloc::bits_per_block); 2 * size_t(__detail::bits_per_block);
template<typename _Tp> template<typename _Tp>
typename __gnu_cxx::bitmap_allocator<_Tp>::_BPVector::size_type typename __gnu_cxx::bitmap_allocator<_Tp>::_BPVector::size_type
bitmap_allocator<_Tp>::_S_last_dealloc_index = 0; bitmap_allocator<_Tp>::_S_last_dealloc_index = 0;
template<typename _Tp> template<typename _Tp>
__gnu_cxx::__balloc::_Bitmap_counter __gnu_cxx::__detail::_Bitmap_counter
<typename bitmap_allocator<_Tp>::_Alloc_block*> <typename bitmap_allocator<_Tp>::_Alloc_block*>
bitmap_allocator<_Tp>::_S_last_request(_S_mem_blocks); bitmap_allocator<_Tp>::_S_last_request(_S_mem_blocks);
......
...@@ -225,7 +225,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -225,7 +225,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _InIterator> template<typename _InIterator>
static _CharT* static _CharT*
_S_construct_aux(_InIterator __beg, _InIterator __end, _S_construct_aux(_InIterator __beg, _InIterator __end,
const _Alloc& __a, __false_type) const _Alloc& __a, std::__false_type)
{ {
typedef typename iterator_traits<_InIterator>::iterator_category _Tag; typedef typename iterator_traits<_InIterator>::iterator_category _Tag;
return _S_construct(__beg, __end, __a, _Tag()); return _S_construct(__beg, __end, __a, _Tag());
...@@ -234,7 +234,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -234,7 +234,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _InIterator> template<typename _InIterator>
static _CharT* static _CharT*
_S_construct_aux(_InIterator __beg, _InIterator __end, _S_construct_aux(_InIterator __beg, _InIterator __end,
const _Alloc& __a, __true_type) const _Alloc& __a, std::__true_type)
{ return _S_construct(static_cast<size_type>(__beg), { return _S_construct(static_cast<size_type>(__beg),
static_cast<value_type>(__end), __a); } static_cast<value_type>(__end), __a); }
......
...@@ -62,6 +62,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -62,6 +62,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
using std::_Construct; using std::_Construct;
using std::_Destroy; using std::_Destroy;
using std::allocator; using std::allocator;
using std::__true_type;
using std::__false_type;
struct _Slist_node_base struct _Slist_node_base
{ {
......
...@@ -99,7 +99,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -99,7 +99,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// requires special behaviour if _InIterator is an integral type // requires special behaviour if _InIterator is an integral type
template<typename _InIterator> template<typename _InIterator>
void void
_M_construct_aux(_InIterator __beg, _InIterator __end, __false_type) _M_construct_aux(_InIterator __beg, _InIterator __end,
std::__false_type)
{ {
typedef typename iterator_traits<_InIterator>::iterator_category _Tag; typedef typename iterator_traits<_InIterator>::iterator_category _Tag;
_M_construct(__beg, __end, _Tag()); _M_construct(__beg, __end, _Tag());
...@@ -107,7 +108,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -107,7 +108,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _InIterator> template<typename _InIterator>
void void
_M_construct_aux(_InIterator __beg, _InIterator __end, __true_type) _M_construct_aux(_InIterator __beg, _InIterator __end,
std::__true_type)
{ _M_construct(static_cast<size_type>(__beg), { _M_construct(static_cast<size_type>(__beg),
static_cast<value_type>(__end)); } static_cast<value_type>(__end)); }
......
...@@ -39,10 +39,16 @@ ...@@ -39,10 +39,16 @@
// purpose. It is provided "as is" without express or implied // purpose. It is provided "as is" without express or implied
// warranty. // warranty.
/** @file ext/vstring.h
* This file is a GNU extension to the Standard C++ Library.
*
* Contains an exception-throwing allocator, useful for testing
* exception safety. In addition, allocation addresses are stored and
* sanity checked.
*/
/** /**
* @file throw_allocator.h Contains an exception-throwing allocator * @file throw_allocator.h
* useful for testing exception safety. In addition, allocation
* addresses are stored and sanity checked.
*/ */
#ifndef _THROW_ALLOCATOR_H #ifndef _THROW_ALLOCATOR_H
......
...@@ -28,6 +28,10 @@ ...@@ -28,6 +28,10 @@
// reasons why the executable file might be covered by the GNU General // reasons why the executable file might be covered by the GNU General
// Public License. // Public License.
/** @file ext/type_traits.h
* This file is a GNU extension to the Standard C++ Library.
*/
#ifndef _EXT_TYPE_TRAITS #ifndef _EXT_TYPE_TRAITS
#define _EXT_TYPE_TRAITS 1 #define _EXT_TYPE_TRAITS 1
......
...@@ -1200,13 +1200,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -1200,13 +1200,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<class _Integer> template<class _Integer>
__versa_string& __versa_string&
_M_replace_dispatch(iterator __i1, iterator __i2, _Integer __n, _M_replace_dispatch(iterator __i1, iterator __i2, _Integer __n,
_Integer __val, __true_type) _Integer __val, std::__true_type)
{ return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __val); } { return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __val); }
template<class _InputIterator> template<class _InputIterator>
__versa_string& __versa_string&
_M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1, _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
_InputIterator __k2, __false_type); _InputIterator __k2, std::__false_type);
__versa_string& __versa_string&
_M_replace_aux(size_type __pos1, size_type __n1, size_type __n2, _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
......
...@@ -84,7 +84,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -84,7 +84,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__versa_string<_CharT, _Traits, _Alloc, _Base>& __versa_string<_CharT, _Traits, _Alloc, _Base>&
__versa_string<_CharT, _Traits, _Alloc, _Base>:: __versa_string<_CharT, _Traits, _Alloc, _Base>::
_M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1, _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
_InputIterator __k2, __false_type) _InputIterator __k2, std::__false_type)
{ {
const __versa_string __s(__k1, __k2); const __versa_string __s(__k1, __k2);
const size_type __n1 = __i2 - __i1; const size_type __n1 = __i2 - __i1;
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file bitset /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file deque /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file iterator /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file list /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file map /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file queue /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file set /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file stack /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
// ISO C++ 14882: 21 Strings library // ISO C++ 14882: 21 Strings library
// //
/** @file string /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file utility /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty. * purpose. It is provided "as is" without express or implied warranty.
*/ */
/** @file vector /** @file
* This is a Standard C++ Library header. * This is a Standard C++ Library header.
*/ */
......
...@@ -1090,6 +1090,10 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) ...@@ -1090,6 +1090,10 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
__x.swap(__y); __x.swap(__y);
} }
_GLIBCXX_END_NAMESPACE
}
#define _GLIBCXX_JOIN(X,Y) _GLIBCXX_JOIN2( X , Y ) #define _GLIBCXX_JOIN(X,Y) _GLIBCXX_JOIN2( X , Y )
#define _GLIBCXX_JOIN2(X,Y) _GLIBCXX_JOIN3(X,Y) #define _GLIBCXX_JOIN2(X,Y) _GLIBCXX_JOIN3(X,Y)
#define _GLIBCXX_JOIN3(X,Y) X##Y #define _GLIBCXX_JOIN3(X,Y) X##Y
...@@ -1100,6 +1104,11 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) ...@@ -1100,6 +1104,11 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
#undef _GLIBCXX_JOIN2 #undef _GLIBCXX_JOIN2
#undef _GLIBCXX_JOIN #undef _GLIBCXX_JOIN
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)
// Definition of default hash function std::tr1::hash<>. The types for // Definition of default hash function std::tr1::hash<>. The types for
// which std::tr1::hash<T> is defined is in clause 6.3.3. of the PDTR. // which std::tr1::hash<T> is defined is in clause 6.3.3. of the PDTR.
template<typename T> template<typename T>
......
...@@ -33,6 +33,10 @@ ...@@ -33,6 +33,10 @@
* You should not attempt to use it directly. * You should not attempt to use it directly.
*/ */
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)
template<typename _Res _GLIBCXX_COMMA _GLIBCXX_TEMPLATE_PARAMS> template<typename _Res _GLIBCXX_COMMA _GLIBCXX_TEMPLATE_PARAMS>
struct _Weak_result_type_impl<_Res(_GLIBCXX_TEMPLATE_ARGS)> struct _Weak_result_type_impl<_Res(_GLIBCXX_TEMPLATE_ARGS)>
{ {
...@@ -914,3 +918,5 @@ template<typename _Functor> ...@@ -914,3 +918,5 @@ template<typename _Functor>
} }
} }
_GLIBCXX_END_NAMESPACE
}
...@@ -27,6 +27,11 @@ ...@@ -27,6 +27,11 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/**
* @file
* This is a TR1 C++ Library header.
*/
#ifndef _TR1_MEMORY #ifndef _TR1_MEMORY
#define _TR1_MEMORY 1 #define _TR1_MEMORY 1
......
...@@ -36,6 +36,8 @@ ...@@ -36,6 +36,8 @@
// Determine the result type when we pass the arguments along. This // Determine the result type when we pass the arguments along. This
// involves passing along the cv-qualifiers placed on _Mu and // involves passing along the cv-qualifiers placed on _Mu and
// unwrapping the argument bundle. // unwrapping the argument bundle.
// @namespace std::tr1
// @class std::tr1::_Mu::result
template<typename _CVMu, typename _CVArg template<typename _CVMu, typename _CVArg
_GLIBCXX_COMMA _GLIBCXX_TEMPLATE_PARAMS> _GLIBCXX_COMMA _GLIBCXX_TEMPLATE_PARAMS>
class result<_CVMu(_CVArg, tuple<_GLIBCXX_TEMPLATE_ARGS>)> class result<_CVMu(_CVArg, tuple<_GLIBCXX_TEMPLATE_ARGS>)>
...@@ -48,4 +50,3 @@ operator()(_CVArg& __arg, const tuple<_GLIBCXX_TEMPLATE_ARGS>& __tuple) ...@@ -48,4 +50,3 @@ operator()(_CVArg& __arg, const tuple<_GLIBCXX_TEMPLATE_ARGS>& __tuple)
{ {
return __arg(_GLIBCXX_MU_GET_TUPLE_ARGS); return __arg(_GLIBCXX_MU_GET_TUPLE_ARGS);
} }
...@@ -27,14 +27,14 @@ ...@@ -27,14 +27,14 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
#ifndef _TR1_RANDOM
#define _TR1_RANDOM 1
/** /**
* @file * @file
* This is a TR1 C++ Library header. * This is a TR1 C++ Library header.
*/ */
#ifndef _TR1_RANDOM
#define _TR1_RANDOM 1
#include <algorithm> #include <algorithm>
#include <bits/concept_check.h> #include <bits/concept_check.h>
#include <cmath> #include <cmath>
......
...@@ -27,6 +27,10 @@ ...@@ -27,6 +27,10 @@
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file
* This is a TR1 C++ Library header.
*/
namespace std namespace std
{ {
_GLIBCXX_BEGIN_NAMESPACE(tr1) _GLIBCXX_BEGIN_NAMESPACE(tr1)
......
...@@ -145,6 +145,9 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) ...@@ -145,6 +145,9 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
swallow_assign ignore; swallow_assign ignore;
}; // anonymous namespace }; // anonymous namespace
_GLIBCXX_END_NAMESPACE
}
#define _GLIBCXX_CAT(x,y) _GLIBCXX_CAT2(x,y) #define _GLIBCXX_CAT(x,y) _GLIBCXX_CAT2(x,y)
#define _GLIBCXX_CAT2(x,y) x##y #define _GLIBCXX_CAT2(x,y) x##y
#define _SHORT_REPEAT #define _SHORT_REPEAT
...@@ -153,9 +156,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1) ...@@ -153,9 +156,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
#undef _GLIBCXX_REPEAT_HEADER #undef _GLIBCXX_REPEAT_HEADER
#undef _SHORT_REPEAT #undef _SHORT_REPEAT
_GLIBCXX_END_NAMESPACE
}
#include <tr1/functional> #include <tr1/functional>
#endif #endif
...@@ -26,6 +26,12 @@ ...@@ -26,6 +26,12 @@
// the GNU General Public License. This exception does not however // the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by // invalidate any other reasons why the executable file might be covered by
// the GNU General Public License. // the GNU General Public License.
/** @file tuple_defs.h
* This is an internal header file, included by other library headers.
* You should not attempt to use it directly.
*/
#ifndef _GLIBCXX_REPEAT_HEADER #ifndef _GLIBCXX_REPEAT_HEADER
# define _GLIBCXX_REPEAT_HEADER "tuple_defs.h" # define _GLIBCXX_REPEAT_HEADER "tuple_defs.h"
# include "repeat.h" # include "repeat.h"
......
...@@ -34,6 +34,10 @@ ...@@ -34,6 +34,10 @@
// Chris Jefferson <chris@bubblescope.net> // Chris Jefferson <chris@bubblescope.net>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)
/// @brief class tuple_size /// @brief class tuple_size
template<_GLIBCXX_TEMPLATE_PARAMS> template<_GLIBCXX_TEMPLATE_PARAMS>
struct tuple_size<tuple<_GLIBCXX_TEMPLATE_ARGS> > struct tuple_size<tuple<_GLIBCXX_TEMPLATE_ARGS> >
...@@ -164,3 +168,5 @@ template<_GLIBCXX_TEMPLATE_PARAMS> ...@@ -164,3 +168,5 @@ template<_GLIBCXX_TEMPLATE_PARAMS>
{ return make_tuple(_GLIBCXX_REF_WRAP_PARAMS); } { return make_tuple(_GLIBCXX_REF_WRAP_PARAMS); }
#endif #endif
_GLIBCXX_END_NAMESPACE
}
...@@ -30,8 +30,7 @@ ...@@ -30,8 +30,7 @@
// the GNU General Public License. // the GNU General Public License.
/** @file exception /** @file exception
* This header defines several types and functions relating to the * This is a Standard C++ Library header.
* handling of exceptions in a C++ program.
*/ */
#ifndef __EXCEPTION__ #ifndef __EXCEPTION__
......
...@@ -31,6 +31,10 @@ ...@@ -31,6 +31,10 @@
// ISO C++ 14882: 19.1 Exception classes // ISO C++ 14882: 19.1 Exception classes
// //
/** @file exception_defines.h
* This is a Standard C++ Library header.
*/
#ifndef _EXCEPTION_DEFINES_H #ifndef _EXCEPTION_DEFINES_H
#define _EXCEPTION_DEFINES_H 1 #define _EXCEPTION_DEFINES_H 1
......
...@@ -30,6 +30,8 @@ ...@@ -30,6 +30,8 @@
// the GNU General Public License. // the GNU General Public License.
/** @file new /** @file new
* This is a Standard C++ Library header.
*
* The header @c new defines several functions to manage dynamic memory and * The header @c new defines several functions to manage dynamic memory and
* handling memory allocation errors; see * handling memory allocation errors; see
* http://gcc.gnu.org/onlinedocs/libstdc++/18_support/howto.html#4 for more. * http://gcc.gnu.org/onlinedocs/libstdc++/18_support/howto.html#4 for more.
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
// the GNU General Public License. // the GNU General Public License.
/** @file typeinfo /** @file typeinfo
* This header provides RTTI support. * This is a Standard C++ Library header.
*/ */
#ifndef _TYPEINFO #ifndef _TYPEINFO
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
namespace __balloc namespace __detail
{ {
template class __mini_vector< template class __mini_vector<
std::pair<bitmap_allocator<char>::_Alloc_block*, std::pair<bitmap_allocator<char>::_Alloc_block*,
...@@ -55,7 +55,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) ...@@ -55,7 +55,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__mutex_type& __bfl_mutex = _M_get_mutex(); __mutex_type& __bfl_mutex = _M_get_mutex();
#endif #endif
const vector_type& __free_list = _M_get_free_list(); const vector_type& __free_list = _M_get_free_list();
using __gnu_cxx::__balloc::__lower_bound; using __gnu_cxx::__detail::__lower_bound;
iterator __tmp = __lower_bound(__free_list.begin(), __free_list.end(), iterator __tmp = __lower_bound(__free_list.begin(), __free_list.end(),
__sz, _LT_pointer_compare()); __sz, _LT_pointer_compare());
......
...@@ -36,5 +36,5 @@ int main() ...@@ -36,5 +36,5 @@ int main()
} }
// { dg-error "instantiated from" "" { target *-*-* } 29 } // { dg-error "instantiated from" "" { target *-*-* } 29 }
// { dg-error "no type" "" { target *-*-* } 72 } // { dg-error "no type" "" { target *-*-* } 76 }
// { dg-excess-errors "In instantiation of" } // { dg-excess-errors "In instantiation of" }
...@@ -37,4 +37,4 @@ int main() ...@@ -37,4 +37,4 @@ int main()
} }
// { dg-error "invalid use of incomplete" "" { target *-*-* } 29 } // { dg-error "invalid use of incomplete" "" { target *-*-* } 29 }
// { dg-error "declaration of" "" { target *-*-* } 67 } // { dg-error "declaration of" "" { target *-*-* } 71 }
...@@ -36,5 +36,5 @@ int main() ...@@ -36,5 +36,5 @@ int main()
} }
// { dg-error "instantiated from" "" { target *-*-* } 29 } // { dg-error "instantiated from" "" { target *-*-* } 29 }
// { dg-error "no type" "" { target *-*-* } 115 } // { dg-error "no type" "" { target *-*-* } 119 }
// { dg-excess-errors "In instantiation of" } // { dg-excess-errors "In instantiation of" }
...@@ -37,4 +37,4 @@ int main() ...@@ -37,4 +37,4 @@ int main()
} }
// { dg-error "invalid use of incomplete" "" { target *-*-* } 29 } // { dg-error "invalid use of incomplete" "" { target *-*-* } 29 }
// { dg-error "declaration of" "" { target *-*-* } 110 } // { dg-error "declaration of" "" { target *-*-* } 114 }
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