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>
PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
......
......@@ -27,6 +27,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_ATOMIC_WORD_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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/atomic_word.h>
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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/concurrence.h>
......
......@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT;
};
_GLIBCXX_END_NAMESPACE
......@@ -35,6 +35,9 @@
// 4.0 and all versions of the CVS managed file at:
// :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -70,5 +73,4 @@
#endif
};
_GLIBCXX_END_NAMESPACE
......@@ -35,6 +35,9 @@
// 4.0 and all versions of the CVS managed file at:
// :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -72,5 +75,4 @@
#endif
};
_GLIBCXX_END_NAMESPACE
......@@ -36,6 +36,9 @@
// anoncvs@anoncvs.netbsd.org:/cvsroot/basesrc/include/ctype.h
// See www.netbsd.org for details of access.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -56,3 +59,5 @@
static const mask punct = _P;
static const mask alnum = _U | _L | _N;
};
_GLIBCXX_END_NAMESPACE
......@@ -31,6 +31,9 @@
// ISO C++ 14882: 22.1 Locales
//
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
typedef unsigned short mask;
......@@ -53,5 +56,4 @@
static const mask graph = __dj_ISALPHA | __dj_ISDIGIT | __dj_ISPUNCT; // Graphical
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Default information, may not be appropriate for specific host.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -54,5 +57,4 @@
static const mask alnum = (1 << 2) | (1 << 3); // alpha|digit
};
_GLIBCXX_END_NAMESPACE
......@@ -39,6 +39,8 @@
// Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
......@@ -60,3 +62,5 @@
static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Default information, may not be appropriate for specific host.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h on irix 5.2
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = _P;
static const mask alnum = _U | _L | _N;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h on irix 6.5
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Information, as gleaned from /mingw32/include/ctype.h.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -54,5 +57,4 @@
static const mask alnum = (_ALPHA | _DIGIT);
};
_GLIBCXX_END_NAMESPACE
......@@ -35,6 +35,9 @@
// Support for Solaris 2.5.1
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -55,3 +58,5 @@
static const mask punct = _P;
static const mask alnum = _U | _L | _N;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = _PU;
static const mask alnum = _DI | _LO | _UP | _XA;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h, for solaris2.5.1
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = 020;
static const mask alnum = 01 | 02 | 04;
};
_GLIBCXX_END_NAMESPACE
......@@ -34,6 +34,9 @@
// Information as gleaned from /usr/include/ctype.h. Looks like this
// only works with solaris2.6.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -54,3 +57,5 @@
static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT;
};
_GLIBCXX_END_NAMESPACE
......@@ -35,6 +35,9 @@
// only works with solaris2.7 and solaris2.8. Thanks for not changing
// things, sun engineers!
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -55,3 +58,5 @@
static const mask punct = _ISPUNCT;
static const mask alnum = _ISALPHA | _ISDIGIT;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit;
};
_GLIBCXX_END_NAMESPACE
......@@ -39,6 +39,8 @@
// Information as gleaned from /usr/include/ctype.h
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
......@@ -62,3 +64,5 @@
static const mask punct = _ISpunct;
static const mask alnum = _ISalpha | _ISdigit;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Information extracted from target/h/ctype.h.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -55,5 +58,4 @@
static const mask alnum = _C_UPPER | _C_LOWER | _C_NUMBER;
};
_GLIBCXX_END_NAMESPACE
......@@ -33,6 +33,9 @@
// Default information, may not be appropriate for specific host.
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Base class for ctype.
struct ctype_base
{
// Non-standard typedefs.
......@@ -53,3 +56,5 @@
static const mask punct = _P;
static const mask alnum = _U | _L | _N;
};
_GLIBCXX_END_NAMESPACE
.\" t
.\" This man page is released under the FDL as part of libstdc++-v3.
.TH C++Intro 3 "20 May 2004" "GNU libstdc++-v3" "Standard C++ Library"
.\" This man page is released under the FDL as part of libstdc++.
.TH C++Intro 3 "20 May 2004" "GNU libstdc++" "Standard C++ Library"
.SH NAME
C++Intro \- Introduction to the GNU libstdc++-v3 man pages
C++Intro \- Introduction to the GNU libstdc++ man pages
.SH DESCRIPTION
This man page serves as a brief introduction to the GNU implementation of
the Standard C++ Library. For a better introduction and more complete
documentation, see the
.B libstdc++-v3
.B libstdc++
homepage listed at the end.
.P
All standard library entities are declared within
......@@ -109,7 +109,7 @@ lB lB.
.TP
.I libstdc++.a
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.
.TP
.I libsupc++.a
......
......@@ -17,26 +17,39 @@
// // // // // // // // // // // // // // // // // // // // // // // //
/** @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
* @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
* @brief GNU extensions for public use.
*/
/** @namespace __gnu_cxx::balloc
* @brief Related to __gnu_cxx::bitmap_allocator.
/** @namespace __gnu_cxx::__detail
* @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
* @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
* @brief GNU debug mode implemenation details.
* @brief GNU debug mode classes for public use.
*/
// // // // // // // // // // // // // // // // // // // // // // // //
/** @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
as well.
......@@ -118,9 +131,10 @@ All associative containers must meet certain requirements, summarized in
// // // // // // // // // // // // // // // // // // // // // // // //
/** @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
* version at http://gcc.gnu.org/onlinedocs/libstdc++/faq/index.html#5_8).
*
......
......@@ -4,15 +4,15 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<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">
</head>
<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).
</p>
......@@ -26,7 +26,7 @@
<a name="creating"><h2>Creating the pages</h2></a>
<p>The Makefile rules <code>'make doxygen'</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
tools are Bash 2.x,
<a href="http://www.doxygen.org/">
......@@ -57,7 +57,7 @@
</p>
<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
<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
......
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<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">
</head>
......@@ -21,13 +21,13 @@
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>
<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
<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
......@@ -45,11 +45,11 @@
<p>Here are entry points to all the pages generated by Doxygen:
<ul>
<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="annotated.html">Class Annotated List</a>
<li><a href="classes.html">Class Alphabetical Index</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="todo.html">TODO List</a> (This is incomplete... how ironic.)
</ul>
......@@ -74,7 +74,7 @@
create (and write) the pages.
<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">
these terms</a>.
</p>
......
......@@ -155,6 +155,7 @@ fi
cd $builddir
sed -e "s=@outdir@=${outdir}=g" \
-e "s=@srcdir@=${srcdir}=g" \
-e "s=@builddir@=${builddir}=g" \
-e "s=@host_alias@=${host_alias}=g" \
-e "s=@html_output_dir@=html_${mode}=" \
-e "s=@enabled_sections@=${enabled_sections}=" \
......
......@@ -635,7 +635,7 @@ examples of the latter are multiset and multimap.
<hr />
<p class="smallertext"><em>
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.
</em></p>
......
......@@ -10,7 +10,7 @@
<meta name="KEYWORDS" content="libstdc++, license, licence" />
<meta name="DESCRIPTION" content="Copying restrictions for libstdc++." />
<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="Start" rev="Copyright" href="../documentation.html" type="text/html"
title="GNU C++ Standard Library" />
......@@ -19,7 +19,7 @@
<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
to answer some of the widespread questions. If you have more questions,
ask the FSF or the
......@@ -31,7 +31,7 @@
<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
&quot;runtime exception,&quot; as follows (or see any header or
implementation file):
......@@ -80,10 +80,10 @@
<hr />
<h2>The Docs: FDL</h2>
<h2>The Docs: GPL, FDL</h2>
<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
the <a href="COPYING.DOC">GNU Free Documentation License version 1.1</a>.
There are no Front-Cover Texts, no Back-Cover Texts, and
......@@ -91,6 +91,12 @@
no Invariant Sections.
</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.
We can probably offer suggestions.
</p>
......
......@@ -44,6 +44,8 @@
#pragma GCC system_header
_GLIBCXX_BEGIN_NAMESPACE(std)
/// @brief Empty base class for codecvt facet [22.2.1.5].
class codecvt_base
{
......@@ -467,4 +469,6 @@
~codecvt_byname() { }
};
_GLIBCXX_END_NAMESPACE
#endif // _CODECVT_H
......@@ -78,9 +78,6 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_GLIBCXX_END_NAMESPACE
struct __true_type { };
struct __false_type { };
_GLIBCXX_BEGIN_NAMESPACE(std)
namespace __detail
......@@ -96,6 +93,10 @@ namespace __detail
__two& __test_type(...);
} // namespace __detail
struct __true_type { };
struct __false_type { };
template<bool>
struct __truth_type
{ typedef __false_type __type; };
......
......@@ -44,6 +44,7 @@
#include <ctime> // For struct tm
#include <cwctype> // For wctype_t
#include <bits/ctype_base.h>
#include <iosfwd>
#include <bits/ios_base.h> // For ios_base, ios_base::iostate
#include <streambuf>
......@@ -130,7 +131,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// 22.2.1.1 Template class ctype
// Include host and configuration specific ctype enums for ctype_base.
#include <bits/ctype_base.h>
// Common base for ctype<_CharT>.
/**
......@@ -1530,8 +1530,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
template<>
ctype_byname<wchar_t>::ctype_byname(const char*, size_t refs);
// 22.2.1.5 Template class codecvt
#include <bits/codecvt.h>
_GLIBCXX_END_NAMESPACE
// 22.2.1.5 Template class codecvt
#include <bits/codecvt.h>
_GLIBCXX_BEGIN_NAMESPACE(std)
// 22.2.2 The numeric category.
class __num_base
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file debug/bitset
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_BITSET
#define _GLIBCXX_DEBUG_BITSET
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_MACRO_SWITCH_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file debug/deque
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_DEQUE
#define _GLIBCXX_DEBUG_DEQUE 1
......
......@@ -27,6 +27,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_FORMATTER_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_FUNCTIONS_H 1
......@@ -109,7 +113,7 @@ namespace __gnu_debug
*/
template<typename _Integral>
inline bool
__valid_range_aux(const _Integral&, const _Integral&, __true_type)
__valid_range_aux(const _Integral&, const _Integral&, std::__true_type)
{ return true; }
/** We have iterators, so figure out what kind of iterators that are
......@@ -118,7 +122,7 @@ namespace __gnu_debug
template<typename _InputIterator>
inline bool
__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
_Category;
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_HASH_MAP 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_HASH_MAP_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_HASH_MULTIMAP_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_HASH_MULTISET_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_HASH_SET 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_HASH_SET_H 1
......
......@@ -28,6 +28,37 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_LIST 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_MACROS_H 1
......
// Debugging map/multimap implementation -*- C++ -*-
// Copyright (C) 2003
// Copyright (C) 2003, 2006
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file debug/map
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_MAP
#define _GLIBCXX_DEBUG_MAP 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_MAP_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_MULTIMAP_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_MULTISET_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_SAFE_BASE_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_SAFE_ITERATOR_H 1
......
......@@ -28,9 +28,8 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file safe_iterator.tcc
* This is an internal header file, included by other library headers.
* You should not attempt to use it directly.
/** @file debug/safe_iterator.tcc
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_SAFE_ITERATOR_TCC
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_SAFE_SEQUENCE_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file debug/set
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_SET
#define _GLIBCXX_DEBUG_SET 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// 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
#define _GLIBCXX_DEBUG_SET_H 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file debug/string
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_STRING
#define _GLIBCXX_DEBUG_STRING 1
......
......@@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file debug/vector
* This file is a GNU debug extension to the Standard C++ Library.
*/
#ifndef _GLIBCXX_DEBUG_VECTOR
#define _GLIBCXX_DEBUG_VECTOR 1
......
......@@ -53,7 +53,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
using std::size_t;
using std::ptrdiff_t;
namespace __balloc
namespace __detail
{
/** @class __mini_vector bitmap_allocator.h bitmap_allocator.h
*
......@@ -361,7 +361,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
: public std::unary_function<typename std::pair<_Tp, _Tp>, bool>
{
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;
size_t* _M_pbitmap;
......@@ -385,11 +385,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// store, then there is definitely no space for another single
// object, so just return false.
_Counter_type __diff =
__gnu_cxx::__balloc::__num_bitmaps(__bp);
__gnu_cxx::__detail::__num_bitmaps(__bp);
if (*(reinterpret_cast<size_t*>
(__bp.first) - (__diff + 1))
== __gnu_cxx::__balloc::__num_blocks(__bp))
== __gnu_cxx::__detail::__num_blocks(__bp))
return false;
size_t* __rover = reinterpret_cast<size_t*>(__bp.first) - 1;
......@@ -428,7 +428,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _Tp>
class _Bitmap_counter
{
typedef typename __balloc::__mini_vector<typename std::pair<_Tp, _Tp> >
typedef typename __detail::__mini_vector<typename std::pair<_Tp, _Tp> >
_BPVector;
typedef typename _BPVector::size_type _Index_type;
typedef _Tp pointer;
......@@ -534,7 +534,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
size_t __mask = 1 << __pos;
*__pbmap |= __mask;
}
} // namespace __balloc
} // namespace __detail
/** @brief Generic Version of the bsf instruction.
*/
......@@ -550,7 +550,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
class free_list
{
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 __mutex __mutex_type;
......@@ -615,7 +615,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
}
// 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(),
*__addr, _LT_pointer_compare());
......@@ -746,7 +746,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
typedef typename std::pair<_Alloc_block*, _Alloc_block*> _Block_pair;
typedef typename
__balloc::__mini_vector<_Block_pair> _BPVector;
__detail::__mini_vector<_Block_pair> _BPVector;
#if defined _GLIBCXX_DEBUG
// Complexity: O(lg(N)). Where, N is the number of block of size
......@@ -755,13 +755,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_S_check_for_free_blocks() throw()
{
typedef typename
__gnu_cxx::__balloc::_Ffit_finder<_Alloc_block*> _FFF;
__gnu_cxx::__detail::_Ffit_finder<_Alloc_block*> _FFF;
_FFF __fff;
typedef typename _BPVector::iterator _BPiter;
_BPiter __bpi =
__gnu_cxx::__balloc::__find_if
__gnu_cxx::__detail::__find_if
(_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());
}
......@@ -786,7 +786,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#endif
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)
+ _S_block_size * sizeof(_Alloc_block)
+ __num_bitmaps * sizeof(size_t);
......@@ -820,7 +820,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
static _BPVector _S_mem_blocks;
static size_t _S_block_size;
static __gnu_cxx::__balloc::
static __gnu_cxx::__detail::
_Bitmap_counter<_Alloc_block*> _S_last_request;
static typename _BPVector::size_type _S_last_dealloc_index;
#if defined __GTHREADS
......@@ -872,13 +872,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
{
// Fall Back to First Fit algorithm.
typedef typename
__gnu_cxx::__balloc::_Ffit_finder<_Alloc_block*> _FFF;
__gnu_cxx::__detail::_Ffit_finder<_Alloc_block*> _FFF;
_FFF __fff;
typedef typename _BPVector::iterator _BPiter;
_BPiter __bpi =
__gnu_cxx::__balloc::__find_if
__gnu_cxx::__detail::__find_if
(_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())
{
......@@ -886,7 +886,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// the right as 0, meaning Allocated. This bit is obtained
// by calling _M_get() on __fff.
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());
......@@ -896,7 +896,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
size_t* __puse_count =
reinterpret_cast<size_t*>
(__bpi->first)
- (__gnu_cxx::__balloc::__num_bitmaps(*__bpi) + 1);
- (__gnu_cxx::__detail::__num_bitmaps(*__bpi) + 1);
++(*__puse_count);
return __ret;
......@@ -918,14 +918,14 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// _S_last_request holds a pointer to a valid bit map, that
// points to a free block in memory.
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>
(_S_last_request._M_base() + _S_last_request._M_offset() + __nz_bit);
size_t* __puse_count = reinterpret_cast<size_t*>
(_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);
++(*__puse_count);
......@@ -957,7 +957,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_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]))
{
_GLIBCXX_DEBUG_ASSERT(_S_last_dealloc_index
......@@ -969,10 +969,10 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
}
else
{
_Iterator _iter = __gnu_cxx::__balloc::
_Iterator _iter = __gnu_cxx::__detail::
__find_if(_S_mem_blocks.begin(),
_S_mem_blocks.end(),
__gnu_cxx::__balloc::
__gnu_cxx::__detail::
_Inclusive_between<_Alloc_block*>(__real_p));
_GLIBCXX_DEBUG_ASSERT(_iter != _S_mem_blocks.end());
......@@ -984,16 +984,16 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// Get the position of the iterator that has been found.
const size_t __rotate = (__displacement
% size_t(__balloc::bits_per_block));
% size_t(__detail::bits_per_block));
size_t* __bitmapC =
reinterpret_cast<size_t*>
(_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*>
(_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);
......@@ -1115,14 +1115,14 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _Tp>
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>
typename __gnu_cxx::bitmap_allocator<_Tp>::_BPVector::size_type
bitmap_allocator<_Tp>::_S_last_dealloc_index = 0;
template<typename _Tp>
__gnu_cxx::__balloc::_Bitmap_counter
__gnu_cxx::__detail::_Bitmap_counter
<typename bitmap_allocator<_Tp>::_Alloc_block*>
bitmap_allocator<_Tp>::_S_last_request(_S_mem_blocks);
......
......@@ -225,7 +225,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _InIterator>
static _CharT*
_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;
return _S_construct(__beg, __end, __a, _Tag());
......@@ -234,7 +234,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _InIterator>
static _CharT*
_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),
static_cast<value_type>(__end), __a); }
......
......@@ -62,6 +62,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
using std::_Construct;
using std::_Destroy;
using std::allocator;
using std::__true_type;
using std::__false_type;
struct _Slist_node_base
{
......
......@@ -99,7 +99,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// requires special behaviour if _InIterator is an integral type
template<typename _InIterator>
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;
_M_construct(__beg, __end, _Tag());
......@@ -107,7 +108,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _InIterator>
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),
static_cast<value_type>(__end)); }
......
......@@ -39,10 +39,16 @@
// purpose. It is provided "as is" without express or implied
// 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
* useful for testing exception safety. In addition, allocation
* addresses are stored and sanity checked.
* @file throw_allocator.h
*/
#ifndef _THROW_ALLOCATOR_H
......
......@@ -28,6 +28,10 @@
// reasons why the executable file might be covered by the GNU General
// Public License.
/** @file ext/type_traits.h
* This file is a GNU extension to the Standard C++ Library.
*/
#ifndef _EXT_TYPE_TRAITS
#define _EXT_TYPE_TRAITS 1
......
......@@ -1200,13 +1200,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<class _Integer>
__versa_string&
_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); }
template<class _InputIterator>
__versa_string&
_M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
_InputIterator __k2, __false_type);
_InputIterator __k2, std::__false_type);
__versa_string&
_M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
......
......@@ -84,7 +84,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__versa_string<_CharT, _Traits, _Alloc, _Base>&
__versa_string<_CharT, _Traits, _Alloc, _Base>::
_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 size_type __n1 = __i2 - __i1;
......
......@@ -41,7 +41,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file bitset
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file deque
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file iterator
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file list
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file map
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file queue
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file set
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file stack
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -32,7 +32,7 @@
// ISO C++ 14882: 21 Strings library
//
/** @file string
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file utility
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -53,7 +53,7 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
/** @file vector
/** @file
* This is a Standard C++ Library header.
*/
......
......@@ -1090,6 +1090,10 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
__x.swap(__y);
}
_GLIBCXX_END_NAMESPACE
}
#define _GLIBCXX_JOIN(X,Y) _GLIBCXX_JOIN2( X , Y )
#define _GLIBCXX_JOIN2(X,Y) _GLIBCXX_JOIN3(X,Y)
#define _GLIBCXX_JOIN3(X,Y) X##Y
......@@ -1100,6 +1104,11 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
#undef _GLIBCXX_JOIN2
#undef _GLIBCXX_JOIN
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)
// 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.
template<typename T>
......
......@@ -33,6 +33,10 @@
* You should not attempt to use it directly.
*/
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)
template<typename _Res _GLIBCXX_COMMA _GLIBCXX_TEMPLATE_PARAMS>
struct _Weak_result_type_impl<_Res(_GLIBCXX_TEMPLATE_ARGS)>
{
......@@ -914,3 +918,5 @@ template<typename _Functor>
}
}
_GLIBCXX_END_NAMESPACE
}
......@@ -27,6 +27,11 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/**
* @file
* This is a TR1 C++ Library header.
*/
#ifndef _TR1_MEMORY
#define _TR1_MEMORY 1
......
......@@ -36,6 +36,8 @@
// Determine the result type when we pass the arguments along. This
// involves passing along the cv-qualifiers placed on _Mu and
// unwrapping the argument bundle.
// @namespace std::tr1
// @class std::tr1::_Mu::result
template<typename _CVMu, typename _CVArg
_GLIBCXX_COMMA _GLIBCXX_TEMPLATE_PARAMS>
class result<_CVMu(_CVArg, tuple<_GLIBCXX_TEMPLATE_ARGS>)>
......@@ -48,4 +50,3 @@ operator()(_CVArg& __arg, const tuple<_GLIBCXX_TEMPLATE_ARGS>& __tuple)
{
return __arg(_GLIBCXX_MU_GET_TUPLE_ARGS);
}
......@@ -27,14 +27,14 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#ifndef _TR1_RANDOM
#define _TR1_RANDOM 1
/**
* @file
* This is a TR1 C++ Library header.
*/
#ifndef _TR1_RANDOM
#define _TR1_RANDOM 1
#include <algorithm>
#include <bits/concept_check.h>
#include <cmath>
......
......@@ -27,6 +27,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file
* This is a TR1 C++ Library header.
*/
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)
......
......@@ -145,6 +145,9 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
swallow_assign ignore;
}; // anonymous namespace
_GLIBCXX_END_NAMESPACE
}
#define _GLIBCXX_CAT(x,y) _GLIBCXX_CAT2(x,y)
#define _GLIBCXX_CAT2(x,y) x##y
#define _SHORT_REPEAT
......@@ -153,9 +156,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
#undef _GLIBCXX_REPEAT_HEADER
#undef _SHORT_REPEAT
_GLIBCXX_END_NAMESPACE
}
#include <tr1/functional>
#endif
......@@ -26,6 +26,12 @@
// 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 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
# define _GLIBCXX_REPEAT_HEADER "tuple_defs.h"
# include "repeat.h"
......
......@@ -34,6 +34,10 @@
// Chris Jefferson <chris@bubblescope.net>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)
/// @brief class tuple_size
template<_GLIBCXX_TEMPLATE_PARAMS>
struct tuple_size<tuple<_GLIBCXX_TEMPLATE_ARGS> >
......@@ -164,3 +168,5 @@ template<_GLIBCXX_TEMPLATE_PARAMS>
{ return make_tuple(_GLIBCXX_REF_WRAP_PARAMS); }
#endif
_GLIBCXX_END_NAMESPACE
}
......@@ -30,8 +30,7 @@
// the GNU General Public License.
/** @file exception
* This header defines several types and functions relating to the
* handling of exceptions in a C++ program.
* This is a Standard C++ Library header.
*/
#ifndef __EXCEPTION__
......
......@@ -31,6 +31,10 @@
// ISO C++ 14882: 19.1 Exception classes
//
/** @file exception_defines.h
* This is a Standard C++ Library header.
*/
#ifndef _EXCEPTION_DEFINES_H
#define _EXCEPTION_DEFINES_H 1
......
......@@ -30,6 +30,8 @@
// the GNU General Public License.
/** @file new
* This is a Standard C++ Library header.
*
* The header @c new defines several functions to manage dynamic memory and
* handling memory allocation errors; see
* http://gcc.gnu.org/onlinedocs/libstdc++/18_support/howto.html#4 for more.
......
......@@ -29,7 +29,7 @@
// the GNU General Public License.
/** @file typeinfo
* This header provides RTTI support.
* This is a Standard C++ Library header.
*/
#ifndef _TYPEINFO
......
......@@ -31,7 +31,7 @@
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
namespace __balloc
namespace __detail
{
template class __mini_vector<
std::pair<bitmap_allocator<char>::_Alloc_block*,
......@@ -55,7 +55,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__mutex_type& __bfl_mutex = _M_get_mutex();
#endif
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(),
__sz, _LT_pointer_compare());
......
......@@ -36,5 +36,5 @@ int main()
}
// { dg-error "instantiated from" "" { target *-*-* } 29 }
// { dg-error "no type" "" { target *-*-* } 72 }
// { dg-error "no type" "" { target *-*-* } 76 }
// { dg-excess-errors "In instantiation of" }
......@@ -37,4 +37,4 @@ int main()
}
// { 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()
}
// { dg-error "instantiated from" "" { target *-*-* } 29 }
// { dg-error "no type" "" { target *-*-* } 115 }
// { dg-error "no type" "" { target *-*-* } 119 }
// { dg-excess-errors "In instantiation of" }
......@@ -37,4 +37,4 @@ int main()
}
// { 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