- After the configure process is complete,
+ After the configure process is complete,
make all
@@ -62,7 +62,7 @@ in the build directory starts the build process. The all
automake) from the file
Makefile.am.
What Comes from Where
Figure B.1. Configure and Build File Dependencies
- Regenerate all generated files by using the command
+ Regenerate all generated files by using the command
autoreconf at the top level of the libstdc++ source
directory.
Configure
Storing Information in non-AC files (like configure.host)
diff --git a/libstdc++-v3/doc/html/manual/configure.html b/libstdc++-v3/doc/html/manual/configure.html
index 7ca9efce747..0024e631c80 100644
--- a/libstdc++-v3/doc/html/manual/configure.html
+++ b/libstdc++-v3/doc/html/manual/configure.html
@@ -193,7 +193,7 @@
additional requirements are necessary and present for
activation, and if so, will turn symbol versioning on. This
option can change the library ABI.
-
--enable-libstdcxx-visibility
In 4.2 and later, enables or disables visibility
+
--enable-libstdcxx-visibility
In 4.2 and later, enables or disables visibility
attributes. If enabled (as by default), and the compiler seems
capable of passing the simple sanity checks thrown at it, adjusts
items in namespace std, namespace std::tr1, namespace std::tr2,
@@ -210,10 +210,10 @@
--include bits/stdc++.h to CXXFLAGS) when running the
testsuite.
--enable-extern-template[default]
Use extern template to pre-instantiate all required
- specializations for certain types defined in the standard libraries.
+ specializations for certain types defined in the standard libraries.
These types include string and dependents like
char_traits, the templatized IO classes,
- allocator, and others.
+ allocator, and others.
Disabling means that implicit
template generation will be used when compiling these types. By
default, this option is on. This option can change the library ABI.
diff --git a/libstdc++-v3/doc/html/manual/debug.html b/libstdc++-v3/doc/html/manual/debug.html
index cdf01bd1995..d85685dce9c 100644
--- a/libstdc++-v3/doc/html/manual/debug.html
+++ b/libstdc++-v3/doc/html/manual/debug.html
@@ -135,7 +135,7 @@
All synchronization primitives used in the library internals need to be
understood by race detectors so that they do not produce false reports.
- Two annotation macros are used to explain low-level synchronization
+ Two annotation macros are used to explain low-level synchronization
to race detectors:
_GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE() and
_GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER().
@@ -157,8 +157,8 @@
that are affected by the annotation macros, which can be done by
recompiling individual files.
Annotating std::string and std::wstring
- reference counting can be done by disabling extern templates (by defining
- _GLIBCXX_EXTERN_TEMPLATE=-1) or by rebuilding the
+ reference counting can be done by disabling extern templates (by defining
+ _GLIBCXX_EXTERN_TEMPLATE=-1) or by rebuilding the
src/string-inst.cc file.
Annotating the remaining atomic operations (at the time of writing these
are in ios_base::Init::~Init, locale::_Impl,
@@ -169,9 +169,9 @@
detection tools:
DRD,
-
+
Helgrind, and
-
+
ThreadSanitizer (this refers to ThreadSanitizer v1, not the
new "tsan" feature built-in to GCC itself).
diff --git a/libstdc++-v3/doc/html/manual/documentation_hacking.html b/libstdc++-v3/doc/html/manual/documentation_hacking.html
index 0de98a5ff94..f6f32fbda63 100644
--- a/libstdc++-v3/doc/html/manual/documentation_hacking.html
+++ b/libstdc++-v3/doc/html/manual/documentation_hacking.html
@@ -118,7 +118,7 @@
the GNU
coreutils. (GNU versions of find, xargs, and possibly
sed and grep are used, just because the GNU versions make
- things very easy.)
+ things very easy.)
To generate the pretty pictures and hierarchy
graphs, the
diff --git a/libstdc++-v3/doc/html/manual/extensions.html b/libstdc++-v3/doc/html/manual/extensions.html
index e5836efa85d..82bf42e54b0 100644
--- a/libstdc++-v3/doc/html/manual/extensions.html
+++ b/libstdc++-v3/doc/html/manual/extensions.html
@@ -37,9 +37,9 @@
- Text find with Small Secondary-to-Primary Key Ratios
+ Text find with Small Secondary-to-Primary Key Ratios
Description
This test inserts a number of pairs into a container. The
@@ -1634,7 +1634,7 @@
Observations
See Observations::Mapping-Semantics
Considerations.
- Text find with Large Secondary-to-Primary Key Ratios
+ Text find with Large Secondary-to-Primary Key Ratios
Description
This test inserts a number of pairs into a container. The
diff --git a/libstdc++-v3/doc/html/manual/policy_data_structures.html b/libstdc++-v3/doc/html/manual/policy_data_structures.html
index 5c3498e5b65..cb9f2461e88 100644
--- a/libstdc++-v3/doc/html/manual/policy_data_structures.html
+++ b/libstdc++-v3/doc/html/manual/policy_data_structures.html
@@ -33,9 +33,9 @@
Other more elaborate hash-functions might scan k
characters starting at a random position (determined at each
resize), or scanning k random positions (determined at
@@ -675,7 +675,7 @@
li, and assume uniform distribution. Then
Equation 21.7.Â
Probability of Probe Sequence of Length k
- p1 =
+ p1 =
P(l1 ⥠k) =
P(l1 ⥠α ( 1 + k / α - 1) ⤠(a)
@@ -689,7 +689,7 @@
I(.) denote the indicator function. Then
Equation 21.8.Â
Probability Probe Sequence in Some Bin
- P( existsi li ⥠k ) =
+ P( existsi li ⥠k ) =
P ( â i = 1m
I(li ⥠k) ⥠1 ) =
P ( â i = 1m I (
li ⥠k ) ⥠m p1 ( 1 + 1 / (m
@@ -747,7 +747,7 @@
be used with mod range hashing
The graphic below gives an overall picture of the resize-related
classes. basic_hash_table
is parametrized by Resize_Policy, which it subclasses
- publicly. This class is currently instantiated only by hash_standard_resize_policy.
+ publicly. This class is currently instantiated only by hash_standard_resize_policy.
hash_standard_resize_policy
itself is parametrized by Trigger_Policy and
Size_Policy. Currently, Trigger_Policy is
@@ -911,7 +911,7 @@
node_end() const;
node_iterator
- node_end();
+ node_end();
The first pairs return node iterators corresponding to the
root node of the tree; the latter pair returns node iterators
corresponding to a just-after-leaf node.
Node Updator
The tree-based containers are parametrized by a
@@ -928,7 +928,7 @@
The tree defines within each node a metadata_type
object.
node_update must also define the following method
for restoring node invariants:
In this method, nd_it is a
node_iterator corresponding to a node whose
@@ -1021,8 +1021,8 @@
data structure to use. Instantiating it by pat_trie_tag, specifies an
underlying PATRICIA trie (explained shortly); any other tag is
currently illegal.
A (PATRICIA) trie is similar to a tree, but with the
following differences:
It explicitly views keys as a sequence of elements.
E.g., a trie can view a string as a sequence of
@@ -1174,7 +1174,7 @@
which unconditionally move an accessed element to the front of
the list. The latter type is very useful in this library,
since there is no need to associate metadata with each element.
- (See [biblio.andrew04mtf]
+ (See [biblio.andrew04mtf]
Use in Multimaps
In this library, there are no equivalents for the standard's
multimaps and multisets; instead one uses an associative
container mapping primary keys to secondary keys.
List-based containers are especially useful as associative
@@ -1219,7 +1219,7 @@
binomial_heap_tag,
rc_binomial_heap_tag,
or thin_heap_tag,
- specifies, respectively,
+ specifies, respectively,
an underlying pairing heap ([biblio.fredman86pairing]),
binary heap ([biblio.clrs2001]),
binomial heap ([biblio.clrs2001]),
@@ -1376,7 +1376,7 @@
heap, and so might be more appropriate for some graph
algorithms.
Of course, one can use any order-preserving associative
container as a priority queue, as in the graphic above label C, possibly by creating an adapter class
- over the associative container (much as
+ over the associative container (much as
std::priority_queue can adapt std::vector).
This has the advantage that no cross-referencing is necessary
at all; the priority queue itself is an associative container.
@@ -1390,14 +1390,14 @@
types. __gnu_pbds::priority_queue
publicly defines container_category as one of the tags. Given any
container Cntnr, the tag of the underlying
- data structure can be found via typename
+ data structure can be found via typename
Cntnr::container_category; this is one of the possible tags shown in the graphic below.
Additionally, a traits mechanism can be used to query a
container type for its attributes. Given any container
Cntnr, then
__gnu_pbds::container_traits<Cntnr>
is a traits class identifying the properties of the
container.
To find if a container might throw if two of its objects are
- joined, one can use
+ joined, one can use
container_traits<Cntnr>::split_join_can_throw
diff --git a/libstdc++-v3/doc/html/manual/using_concurrency.html b/libstdc++-v3/doc/html/manual/using_concurrency.html
index 1b6ebed067d..e09fc5e15bc 100644
--- a/libstdc++-v3/doc/html/manual/using_concurrency.html
+++ b/libstdc++-v3/doc/html/manual/using_concurrency.html
@@ -117,7 +117,7 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
begin, end, rbegin, rend,
front, back, data,
find, lower_bound, upper_bound,
- equal_range, at
+ equal_range, at
and, except in associative or unordered associative containers,
operator[]. In other words, although they are non-const
so that they can return mutable iterators, those member functions
@@ -142,8 +142,8 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
int i = *global_sp; // OK, operator* is const
int j = *local_sp; // OK, does not operate on global_sp
- // *global_sp = 2; // NOT OK, modifies int visible to other threads
- // *local_sp = 2; // NOT OK, modifies int visible to other threads
+ // *global_sp = 2; // NOT OK, modifies int visible to other threads
+ // *local_sp = 2; // NOT OK, modifies int visible to other threads
// global_sp.reset(); // NOT OK, reset is non-const
local_sp.reset(); // OK, does not operate on global_sp
@@ -158,7 +158,7 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
}
This gets a bit tricky. Please read carefully, and bear with me.
diff --git a/libstdc++-v3/doc/html/manual/using_headers.html b/libstdc++-v3/doc/html/manual/using_headers.html
index 0d5de91fe31..da86cf7d905 100644
--- a/libstdc++-v3/doc/html/manual/using_headers.html
+++ b/libstdc++-v3/doc/html/manual/using_headers.html
@@ -75,7 +75,7 @@ Including this header in earlier modes will not result in
compilation errors, but will not define anything.
Table 3.11. File System TS Header
experimental/filesystem
Table 3.12, âLibrary Fundamentals TS Headersâ,
-shows the additional include files define by the C++ Extensions for
+shows the additional include files define by the C++ Extensions for
Library Fundamentals Technical Specification, ISO/IEC TS 19568.
These are available in C++14 and later compilation modes.
Including these headers in earlier modes will not result in
diff --git a/libstdc++-v3/doc/xml/book.txml b/libstdc++-v3/doc/xml/book.txml
index 55b050271a5..8e3f3273c34 100644
--- a/libstdc++-v3/doc/xml/book.txml
+++ b/libstdc++-v3/doc/xml/book.txml
@@ -2,7 +2,7 @@
-
+
2007
@@ -13,7 +13,7 @@
- License
+ License
@@ -22,7 +22,7 @@
-
+
diff --git a/libstdc++-v3/doc/xml/chapter.txml b/libstdc++-v3/doc/xml/chapter.txml
index b251c84609a..a5a9a3a8230 100644
--- a/libstdc++-v3/doc/xml/chapter.txml
+++ b/libstdc++-v3/doc/xml/chapter.txml
@@ -1,7 +1,7 @@
-
+
IntroductionISO C++
@@ -12,33 +12,33 @@
Status
-
+
The GNU C++ ...
Setup
-
+
The GNU C++ ...
Next1
-
+
The GNU C++ ...
Next2
-
+
The GNU C++ ...
-
+ Using
-
+
The GNU C++ ...
diff --git a/libstdc++-v3/doc/xml/class.txml b/libstdc++-v3/doc/xml/class.txml
index be0929b7046..8d96d2cb0fa 100644
--- a/libstdc++-v3/doc/xml/class.txml
+++ b/libstdc++-v3/doc/xml/class.txml
@@ -2,7 +2,7 @@
-
+
allocatorISO C++
@@ -31,7 +31,7 @@
-
+
@@ -41,7 +41,7 @@
-
+
@@ -49,19 +49,19 @@
Interface Design
-
+
-
-
+
+ Selecting Default Allocation Strategy
-
-
+
+
@@ -77,12 +77,12 @@
Disabling Memory Caching
-
-
+
+
-
+
@@ -97,22 +97,22 @@
Custom Allocators
-
+
-
+
-
+
Bibliography
-
Mutating
-
+
swap
-
+
Specializations
-
+
If you call std::swap(x,y); where x and y are standard
containers, then the call will automatically be replaced by a call to
diff --git a/libstdc++-v3/doc/xml/manual/allocator.xml b/libstdc++-v3/doc/xml/manual/allocator.xml
index d8a255ca213..1f429410eb0 100644
--- a/libstdc++-v3/doc/xml/manual/allocator.xml
+++ b/libstdc++-v3/doc/xml/manual/allocator.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/appendix_contributing.xml b/libstdc++-v3/doc/xml/manual/appendix_contributing.xml
index 4380cbbe3f1..d346b922907 100644
--- a/libstdc++-v3/doc/xml/manual/appendix_contributing.xml
+++ b/libstdc++-v3/doc/xml/manual/appendix_contributing.xml
@@ -1,4 +1,4 @@
-
@@ -28,10 +28,10 @@
Contributor Checklist
-
+
Reading
-
+
@@ -89,7 +89,7 @@
Assignment
-
+
See the legal prerequisites for all GCC contributions.
@@ -124,7 +124,7 @@
Getting Sources
-
+
Getting write access
(look for "Write after approval")
@@ -132,7 +132,7 @@
Submitting Patches
-
+
Every patch must have several pieces of information before it can be
@@ -196,7 +196,7 @@
Directory Layout and Source Conventions
-
+
The libstdc++-v3 directory in the
@@ -409,7 +409,7 @@ indicate a place that may require attention for multi-thread safety.
Coding Style
-
+
@@ -610,7 +610,7 @@ indicate a place that may require attention for multi-thread safety.
By Example
-
+
This library is written to appropriate C++ coding standards. As such,
it is intended to precede the recommendations of the GNU Coding
@@ -1042,7 +1042,7 @@ indicate a place that may require attention for multi-thread safety.
Design Notes
-
+
diff --git a/libstdc++-v3/doc/xml/manual/appendix_free.xml b/libstdc++-v3/doc/xml/manual/appendix_free.xml
index dd51eae8afc..0ce92c372d8 100644
--- a/libstdc++-v3/doc/xml/manual/appendix_free.xml
+++ b/libstdc++-v3/doc/xml/manual/appendix_free.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/appendix_porting.xml b/libstdc++-v3/doc/xml/manual/appendix_porting.xml
index 8eb90d18745..8f3eca8d7b8 100644
--- a/libstdc++-v3/doc/xml/manual/appendix_porting.xml
+++ b/libstdc++-v3/doc/xml/manual/appendix_porting.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/atomics.xml b/libstdc++-v3/doc/xml/manual/atomics.xml
index 5bd07585d69..0018212bc87 100644
--- a/libstdc++-v3/doc/xml/manual/atomics.xml
+++ b/libstdc++-v3/doc/xml/manual/atomics.xml
@@ -1,4 +1,4 @@
-
@@ -21,7 +21,7 @@
API Reference
-
+
All items are declared in the standard header
diff --git a/libstdc++-v3/doc/xml/manual/auto_ptr.xml b/libstdc++-v3/doc/xml/manual/auto_ptr.xml
index 2321b0f5029..f01e2d491b1 100644
--- a/libstdc++-v3/doc/xml/manual/auto_ptr.xml
+++ b/libstdc++-v3/doc/xml/manual/auto_ptr.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml b/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml
index 8d97c2193e7..cce553380e1 100644
--- a/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml
+++ b/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml
@@ -1,4 +1,4 @@
-
@@ -39,7 +39,7 @@ Committee couldn't include everything, and so a lot of those
Portability notes and known implementation limitations are as follows.No ios_base
-
+
At least some older implementations don't have std::ios_base, so you should use std::ios::badbit, std::ios::failbit and std::ios::eofbit and std::ios::goodbit.
@@ -93,7 +93,7 @@ considered replaced and rewritten.
Namespace std:: not supported
-
+
Some care is required to support C++ compiler and or library
@@ -210,7 +210,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [
isspace from <cctype> is a macro
-
+
Glibc 2.0.x and 2.1.x define <ctype.h> functionality as macros
@@ -488,7 +488,7 @@ particular info iostream.
Little or no wide character support
-
+
Classes wstring and
char_traits<wchar_t> are
@@ -497,7 +497,7 @@ particular info iostream.
No templatized iostreams
-
+
Classes wfilebuf and
wstringstream are not supported.
diff --git a/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml b/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml
index 82fc91278da..2b052d4a247 100644
--- a/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml
+++ b/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml
@@ -1,4 +1,4 @@
-
@@ -57,7 +57,7 @@
Free List Store
-
+
The Free List Store (referred to as FLS for the remaining part of this
@@ -122,7 +122,7 @@ else return false.Super Block
-
+
A super block is the block of memory acquired from the FLS from
@@ -145,7 +145,7 @@ else return false.Super Block Data Layout
-
+
Each Super Block will be of some size that is a multiple of the
number of Bits Per Block. Typically, this value is chosen as
@@ -221,7 +221,7 @@ else return false.Maximum Wasted Percentage
-
+
This has nothing to do with the algorithm per-se,
@@ -262,7 +262,7 @@ For map/multimap: k = 12, and c = 4 (int and double), we get: 37.524%
allocate
-
+
The allocate function is specialized for single object allocation
@@ -368,7 +368,7 @@ single object allocations.
deallocate
-
+
The deallocate function again is specialized for single objects ONLY.
For all n belonging to > 1, the operator delete is called without
@@ -412,10 +412,10 @@ single object allocations.
Questions
-
+
1
-
+
Q1) The "Data Layout" section is
cryptic. I have no idea of what you are trying to say. Layout of what?
@@ -431,7 +431,7 @@ systems.
2
-
+
And since I just mentioned the
term `each bitmap', what in the world is meant by it? What does each
@@ -454,7 +454,7 @@ Block a bitmap as well?
3
-
+
How do the allocate and deallocate functions work in regard to
bitmaps?
@@ -495,7 +495,7 @@ Block a bitmap as well?
Locality
-
+
Another issue would be whether to keep the all bitmaps in a
separate area in memory, or to keep them near the actual blocks
@@ -524,7 +524,7 @@ equivalent.Overhead and Grow Policy
-
+
Expected overhead per block would be 1 bit in memory. Also, once
the address of the free list has been found, the cost for
diff --git a/libstdc++-v3/doc/xml/manual/build_hacking.xml b/libstdc++-v3/doc/xml/manual/build_hacking.xml
index e9691bd375a..36f659cea4b 100644
--- a/libstdc++-v3/doc/xml/manual/build_hacking.xml
+++ b/libstdc++-v3/doc/xml/manual/build_hacking.xml
@@ -55,7 +55,7 @@ The configure file is a script generated (via
- After the configure process is complete,
+ After the configure process is complete,
@@ -92,7 +92,7 @@ in the build directory starts the build process. The all targ
- Regenerate all generated files by using the command
+ Regenerate all generated files by using the command
autoreconf at the top level of the libstdc++ source
directory.
diff --git a/libstdc++-v3/doc/xml/manual/codecvt.xml b/libstdc++-v3/doc/xml/manual/codecvt.xml
index 1db941cf64d..d6158db7c75 100644
--- a/libstdc++-v3/doc/xml/manual/codecvt.xml
+++ b/libstdc++-v3/doc/xml/manual/codecvt.xml
@@ -1,4 +1,4 @@
-
@@ -114,7 +114,7 @@ particular.wchar_t Size
-
+
The simple implementation detail of wchar_t's size seems to
@@ -134,7 +134,7 @@ particular.Support for Unicode
-
+
Probably the most frequently asked question about code conversion
is: "So dudes, what's the deal with Unicode strings?"
@@ -242,7 +242,7 @@ mechanism may be required.
Other Issues
-
+
In addition, multi-threaded and multi-locale environments also impact
the design and requirements for code conversions. In particular, they
diff --git a/libstdc++-v3/doc/xml/manual/concurrency.xml b/libstdc++-v3/doc/xml/manual/concurrency.xml
index 0d3381f1a0e..62bb2aff87e 100644
--- a/libstdc++-v3/doc/xml/manual/concurrency.xml
+++ b/libstdc++-v3/doc/xml/manual/concurrency.xml
@@ -1,4 +1,4 @@
-
@@ -25,7 +25,7 @@
API Reference
-
+
All items are declared in one of four standard header files.
diff --git a/libstdc++-v3/doc/xml/manual/concurrency_extensions.xml b/libstdc++-v3/doc/xml/manual/concurrency_extensions.xml
index 663ae5eefb5..6499fda58c3 100644
--- a/libstdc++-v3/doc/xml/manual/concurrency_extensions.xml
+++ b/libstdc++-v3/doc/xml/manual/concurrency_extensions.xml
@@ -1,4 +1,4 @@
-
@@ -12,10 +12,10 @@
Design
-
+
Interface to Locks and Mutexes
-
+
The file <ext/concurrence.h>
contains all the higher-level
@@ -74,7 +74,7 @@ mutex and lock types defined in the header
Interface to Atomic Functions
-
+
@@ -186,9 +186,9 @@ host hardware and operating system.
Implementation
-
+
Using Built-in Atomic Functions
-
+
The functions for atomic operations described above are either
implemented via compiler intrinsics (if the underlying host is
@@ -276,7 +276,7 @@ hardware, hand-crafted assembly is selected. This is the case for the following
Thread Abstraction
-
+
A thin layer above IEEE 1003.1 (i.e. pthreads) is used to abstract
the thread interface for GCC. This layer is called "gthread," and is
diff --git a/libstdc++-v3/doc/xml/manual/configure.xml b/libstdc++-v3/doc/xml/manual/configure.xml
index 74d6db71ab4..b84ac426244 100644
--- a/libstdc++-v3/doc/xml/manual/configure.xml
+++ b/libstdc++-v3/doc/xml/manual/configure.xml
@@ -1,4 +1,4 @@
-
@@ -322,7 +322,7 @@
--enable-libstdcxx-visibility
- In 4.2 and later, enables or disables visibility
+ In 4.2 and later, enables or disables visibility
attributes. If enabled (as by default), and the compiler seems
capable of passing the simple sanity checks thrown at it, adjusts
items in namespace std, namespace std::tr1, namespace std::tr2,
@@ -348,10 +348,10 @@
--enable-extern-template[default]Use extern template to pre-instantiate all required
- specializations for certain types defined in the standard libraries.
+ specializations for certain types defined in the standard libraries.
These types include string and dependents like
char_traits, the templatized IO classes,
- allocator, and others.
+ allocator, and others.
Disabling means that implicit
template generation will be used when compiling these types. By
default, this option is on. This option can change the library ABI.
diff --git a/libstdc++-v3/doc/xml/manual/containers.xml b/libstdc++-v3/doc/xml/manual/containers.xml
index 6d568164b47..e5810fa5f31 100644
--- a/libstdc++-v3/doc/xml/manual/containers.xml
+++ b/libstdc++-v3/doc/xml/manual/containers.xml
@@ -1,4 +1,4 @@
-
@@ -17,13 +17,13 @@
Sequences
-
+
list
-
+
list::size() is O(n)
-
+
Yes it is, at least using the old
ABI, and that's okay. This is a decision that we preserved
@@ -78,10 +78,10 @@
Associative
-
+
Insertion Hints
-
+
Section [23.1.2], Table 69, of the C++ standard lists this
function for all of the associative containers (map, set, etc):
@@ -189,9 +189,9 @@
bitset
-
+
Size Variable
-
+
No, you cannot write code of the form
@@ -299,7 +299,7 @@
Type String
-
+
@@ -452,10 +452,10 @@
Interacting with C
-
+
Containers vs. Arrays
-
+
You're writing some code and can't decide whether to use builtin
arrays or some kind of container. There are compelling reasons
diff --git a/libstdc++-v3/doc/xml/manual/ctype.xml b/libstdc++-v3/doc/xml/manual/ctype.xml
index d0be7fb068a..55930c1751f 100644
--- a/libstdc++-v3/doc/xml/manual/ctype.xml
+++ b/libstdc++-v3/doc/xml/manual/ctype.xml
@@ -1,4 +1,4 @@
-
@@ -15,7 +15,7 @@
Specializations
-
+
For the required specialization codecvt<wchar_t, char, mbstate_t>,
diff --git a/libstdc++-v3/doc/xml/manual/debug.xml b/libstdc++-v3/doc/xml/manual/debug.xml
index bb018569b39..7b60b497cfc 100644
--- a/libstdc++-v3/doc/xml/manual/debug.xml
+++ b/libstdc++-v3/doc/xml/manual/debug.xml
@@ -1,4 +1,4 @@
-
@@ -210,7 +210,7 @@
- Two annotation macros are used to explain low-level synchronization
+ Two annotation macros are used to explain low-level synchronization
to race detectors:
_GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE() and
_GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER().
@@ -232,8 +232,8 @@
that are affected by the annotation macros, which can be done by
recompiling individual files.
Annotating std::string and std::wstring
- reference counting can be done by disabling extern templates (by defining
- _GLIBCXX_EXTERN_TEMPLATE=-1) or by rebuilding the
+ reference counting can be done by disabling extern templates (by defining
+ _GLIBCXX_EXTERN_TEMPLATE=-1) or by rebuilding the
src/string-inst.cc file.
Annotating the remaining atomic operations (at the time of writing these
are in ios_base::Init::~Init, locale::_Impl,
@@ -244,14 +244,14 @@
The approach described above is known to work with the following race
detection tools:
-
DRD,
-
+
Helgrind, and
-
+
ThreadSanitizer (this refers to ThreadSanitizer v1, not the
new "tsan" feature built-in to GCC itself).
diff --git a/libstdc++-v3/doc/xml/manual/debug_mode.xml b/libstdc++-v3/doc/xml/manual/debug_mode.xml
index 570c17ba28a..883e8cb4f03 100644
--- a/libstdc++-v3/doc/xml/manual/debug_mode.xml
+++ b/libstdc++-v3/doc/xml/manual/debug_mode.xml
@@ -1,4 +1,4 @@
-
@@ -13,7 +13,7 @@
Intro
-
+
By default, libstdc++ is built with efficiency in mind, and
therefore performs little or no error checking that is not
@@ -59,7 +59,7 @@
Semantics
-
+
@@ -141,11 +141,11 @@ which always works correctly.
Using
-
+
Using the Debug Mode
-
+
To use the libstdc++ debug mode, compile your application with the
compiler flag -D_GLIBCXX_DEBUG. Note that this flag
@@ -163,7 +163,7 @@ which always works correctly.
Using a Specific Debug Container
-
+
When it is not feasible to recompile your entire application, or
only specific containers need checking, debugging containers are
available as GNU extensions. These debugging containers are
@@ -329,11 +329,11 @@ containers have additional debug capability.
Design
-
+
Goals
-
+
The libstdc++ debug mode replaces unsafe (but efficient) standard
@@ -448,7 +448,7 @@ containers have additional debug capability.
Methods
-
+
This section provides an overall view of the design of the
@@ -456,7 +456,7 @@ containers have additional debug capability.
decisions and the stated design goals.The Wrapper Model
-
+
The libstdc++ debug mode uses a wrapper model where the
debugging versions of library components (e.g., iterators and
containers) form a layer on top of the release versions of the
@@ -479,7 +479,7 @@ containers have additional debug capability.
iterator from a different container.Safe Iterators
-
+
Iterator wrappers provide a debugging layer over any iterator that
is attached to a particular container, and will manage the
information detailing the iterator's state (singular,
@@ -502,7 +502,7 @@ containers have additional debug capability.
Safe Sequences (Containers)
-
+
Container wrappers provide a debugging layer over a particular
container type. Because containers vary greatly in the member
@@ -551,7 +551,7 @@ template<typename _Tp, typename _Allocator = allocator<_Tp>
Precondition Checking
-
+
The debug mode operates primarily by checking the preconditions of
all standard library operations that it supports. Preconditions that
are always checked (regardless of whether or not we are in debug
@@ -585,7 +585,7 @@ template<typename _Tp, typename _Allocator = allocator<_Tp>
Release- and debug-mode coexistence
-
+
The libstdc++ debug mode is the first debug mode we know of that
is able to provide the "Per-use recompilation" (4) guarantee, that
allows release-compiled and debug-compiled code to be linked and
@@ -603,7 +603,7 @@ template<typename _Tp, typename _Allocator = allocator<_Tp>
(namely, safe iterators).Compile-time coexistence of release- and debug-mode components
-
+
Both the release-mode components and the debug-mode
components need to exist within a single translation unit so that
@@ -671,7 +671,7 @@ namespace std
Link- and run-time coexistence of release- and
debug-mode components
-
+
Because each component has a distinct and separate release and
debug implementation, there is no issue with link-time
@@ -854,7 +854,7 @@ test02()
Other Implementations
-
+
There are several existing implementations of debug modes for C++
diff --git a/libstdc++-v3/doc/xml/manual/diagnostics.xml b/libstdc++-v3/doc/xml/manual/diagnostics.xml
index 08f576965d2..86737cc4d4d 100644
--- a/libstdc++-v3/doc/xml/manual/diagnostics.xml
+++ b/libstdc++-v3/doc/xml/manual/diagnostics.xml
@@ -1,4 +1,4 @@
-
@@ -16,10 +16,10 @@
Exceptions
-
+
API Reference
-
+
Most exception classes are defined in one of the standard headers
<exception>,
@@ -52,12 +52,12 @@
std::string member. A full hierarchy can be
found in the source documentation.
-
+
-
+
Adding Data to exception
-
+
The standard exception classes carry with them a single string as
data (usually describing what went wrong or where the 'throw' took
@@ -116,7 +116,7 @@
Concept Checking
-
+
In 1999, SGI added concept checkers to their
implementation of the STL: code which checked the template
diff --git a/libstdc++-v3/doc/xml/manual/documentation_hacking.xml b/libstdc++-v3/doc/xml/manual/documentation_hacking.xml
index 7db776794c2..723120808d7 100644
--- a/libstdc++-v3/doc/xml/manual/documentation_hacking.xml
+++ b/libstdc++-v3/doc/xml/manual/documentation_hacking.xml
@@ -1,4 +1,4 @@
-
@@ -43,7 +43,7 @@
reference. Although divergent, this conforms to the GNU Project
recommendations as long as the output is of sufficient quality,
as per
-
GNU Manuals.
@@ -53,7 +53,7 @@
Generating Documentation
-
+
Certain Makefile rules are required by the GNU Coding
Standards. These standard rules generate HTML, PDF, XML, or man
@@ -130,7 +130,7 @@
-
+
make man
@@ -170,7 +170,7 @@
doc/libstdc++/libstdc++-manual.epub
-
+
@@ -203,9 +203,9 @@
Doxygen
-
+
Prerequisites
-
+
Doxygen Prerequisites
@@ -265,7 +265,7 @@
the GNU
coreutils. (GNU versions of find, xargs, and possibly
sed and grep are used, just because the GNU versions make
- things very easy.)
+ things very easy.)
@@ -291,7 +291,7 @@
Generating the Doxygen Files
-
+
The following Makefile rules run Doxygen to generate HTML
docs, XML docs, XML docs as a single file, PDF docs, and the
@@ -346,7 +346,7 @@
Debugging Generation
-
+
Sometimes, mis-configuration of the pre-requisite tools can
lead to errors when attempting to build the
@@ -433,7 +433,7 @@
Markup
-
+
In general, libstdc++ files should be formatted according to
@@ -446,7 +446,7 @@
Adding Doxygen markup to a file (informally called
doxygenating) is very simple. See the
- Doxygen
manual for details.
We try to use a very-recent version of Doxygen.
@@ -649,11 +649,11 @@
Docbook
-
+
Prerequisites
-
-
+
+
Docbook Prerequisites
@@ -784,7 +784,7 @@
Generating the DocBook Files
-
+
The following Makefile rules generate (in order): an HTML
@@ -939,7 +939,7 @@ make XSL_STYLE_DIR="/usr/share/xml/docbook/stylesheet/nwalsh"
This is equivalent to doing:
-
+
xmllint --noout --valid xml/index.xml
@@ -961,7 +961,7 @@ make XSL_STYLE_DIR="/usr/share/xml/docbook/stylesheet/nwalsh"File Organization and Basics
-
+
Which files are important
@@ -1027,7 +1027,7 @@ make XSL_STYLE_DIR="/usr/share/xml/docbook/stylesheet/nwalsh"Markup By Example
-
+
Complete details on Docbook markup can be found in the
diff --git a/libstdc++-v3/doc/xml/manual/evolution.xml b/libstdc++-v3/doc/xml/manual/evolution.xml
index 623d53e7faf..625202b9a06 100644
--- a/libstdc++-v3/doc/xml/manual/evolution.xml
+++ b/libstdc++-v3/doc/xml/manual/evolution.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/internals.xml b/libstdc++-v3/doc/xml/manual/internals.xml
index 09407f86c24..5b3be2d1a84 100644
--- a/libstdc++-v3/doc/xml/manual/internals.xml
+++ b/libstdc++-v3/doc/xml/manual/internals.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/intro.xml b/libstdc++-v3/doc/xml/manual/intro.xml
index 4a5d25fa0d7..76e55980324 100644
--- a/libstdc++-v3/doc/xml/manual/intro.xml
+++ b/libstdc++-v3/doc/xml/manual/intro.xml
@@ -21,11 +21,11 @@
Status
-
+
Implementation Status
-
+
@@ -63,7 +63,7 @@
License
-
+
There are two licenses affecting GNU libstdc++: one for the code,
and one for the documentation.
@@ -75,7 +75,7 @@
The Code: GPL
-
+
The source code is distributed under the GNU General Public License version 3,
@@ -166,7 +166,7 @@ requirements of the license of GCC.
The Documentation: GPL, FDL
-
+
The documentation shipped with the library and made available over
@@ -195,10 +195,10 @@ requirements of the license of GCC.
Bugs
-
+
Implementation Bugs
-
+
Information on known bugs, details on efforts to fix them, and
fixed bugs are all available as part of the GCC bug tracking system,
@@ -207,7 +207,7 @@ requirements of the license of GCC.
Standard Bugs
-
+
Everybody's got issues. Even the C++ Standard Library.
@@ -1285,7 +1285,7 @@ requirements of the license of GCC.
Setup
-
+
To transform libstdc++ sources into installed include files
and properly built binaries useful for linking to other software is
diff --git a/libstdc++-v3/doc/xml/manual/io.xml b/libstdc++-v3/doc/xml/manual/io.xml
index 0c069b369e7..8380683561a 100644
--- a/libstdc++-v3/doc/xml/manual/io.xml
+++ b/libstdc++-v3/doc/xml/manual/io.xml
@@ -1,4 +1,4 @@
-
@@ -17,7 +17,7 @@
Iostream Objects
-
+
To minimize the time you have to wait on the compiler, it's good to
only include the headers you really need. Many people simply include
@@ -180,10 +180,10 @@
Stream Buffers
-
+
Derived streambuf Classes
-
+
@@ -249,7 +249,7 @@
Buffering
-
+
First, are you sure that you understand buffering? Particularly
the fact that C++ may not, in fact, have anything to do with it?
@@ -345,9 +345,9 @@
Memory Based Streams
-
+
Compatibility With strstream
-
+
Stringstreams (defined in the header <sstream>)
@@ -392,10 +392,10 @@
File Based Streams
-
+
Copying a File
-
+
@@ -461,7 +461,7 @@
Binary Input and Output
-
+
The first and most important thing to remember about binary I/O is
@@ -595,11 +595,11 @@
Interacting with C
-
+
Using FILE* and file descriptors
-
+
See the extensions for using
FILE and file descriptors with
@@ -609,7 +609,7 @@
Performance
-
+
Pathetic Performance? Ditch C.
diff --git a/libstdc++-v3/doc/xml/manual/iterators.xml b/libstdc++-v3/doc/xml/manual/iterators.xml
index aab26b92e40..d0b75084e05 100644
--- a/libstdc++-v3/doc/xml/manual/iterators.xml
+++ b/libstdc++-v3/doc/xml/manual/iterators.xml
@@ -1,4 +1,4 @@
-
@@ -16,10 +16,10 @@
Predefined
-
+
Iterators vs. Pointers
-
+
The following
FAQ entry points out that
@@ -66,7 +66,7 @@ classes.
One Past the End
-
+
This starts off sounding complicated, but is actually very easy,
especially towards the end. Trust me.
diff --git a/libstdc++-v3/doc/xml/manual/locale.xml b/libstdc++-v3/doc/xml/manual/locale.xml
index c0552b4aa48..7f6a7e70688 100644
--- a/libstdc++-v3/doc/xml/manual/locale.xml
+++ b/libstdc++-v3/doc/xml/manual/locale.xml
@@ -1,4 +1,4 @@
-locale
@@ -106,7 +106,7 @@ portability is an issue.
Interacting with "C" locales
-
+
diff --git a/libstdc++-v3/doc/xml/manual/localization.xml b/libstdc++-v3/doc/xml/manual/localization.xml
index d05ca4d7dca..22d861ced40 100644
--- a/libstdc++-v3/doc/xml/manual/localization.xml
+++ b/libstdc++-v3/doc/xml/manual/localization.xml
@@ -1,4 +1,4 @@
-
@@ -17,7 +17,7 @@
Locales
-
+
@@ -27,7 +27,7 @@
Facets
-
+
diff --git a/libstdc++-v3/doc/xml/manual/messages.xml b/libstdc++-v3/doc/xml/manual/messages.xml
index 12ebd443508..b1bc4b76f07 100644
--- a/libstdc++-v3/doc/xml/manual/messages.xml
+++ b/libstdc++-v3/doc/xml/manual/messages.xml
@@ -1,4 +1,4 @@
-
@@ -116,7 +116,7 @@ A couple of notes on the standard.
First, why is messages_base::catalog specified as a typedef
to int? This makes sense for implementations that use
catopen and define nl_catd as int, but not for
-others. Fortunately, it's not heavily used and so only a minor irritant.
+others. Fortunately, it's not heavily used and so only a minor irritant.
This has been reported as a possible defect in the standard (LWG 2028).
@@ -159,7 +159,7 @@ other, explicitly named locales.
Models
-
+
This is a relatively simple class, on the face of it. The standard
specifies very little in concrete terms, so generic
@@ -227,7 +227,7 @@ model.
The GNU Model
-
+
The messages facet, because it is retrieving and converting
diff --git a/libstdc++-v3/doc/xml/manual/mt_allocator.xml b/libstdc++-v3/doc/xml/manual/mt_allocator.xml
index e89a0145490..93504a7d711 100644
--- a/libstdc++-v3/doc/xml/manual/mt_allocator.xml
+++ b/libstdc++-v3/doc/xml/manual/mt_allocator.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/numerics.xml b/libstdc++-v3/doc/xml/manual/numerics.xml
index cc2615390f2..bb1d45d6b3b 100644
--- a/libstdc++-v3/doc/xml/manual/numerics.xml
+++ b/libstdc++-v3/doc/xml/manual/numerics.xml
@@ -1,4 +1,4 @@
-
@@ -17,11 +17,11 @@
Complex
-
+
complex Processing
-
+
Using complex<> becomes even more comple- er, sorry,
@@ -52,7 +52,7 @@
Generalized Operations
-
+
@@ -95,10 +95,10 @@
Interacting with C
-
+
Numerics vs. Arrays
-
+
One of the major reasons why FORTRAN can chew through numbers so well
is that it is defined to be free of pointer aliasing, an assumption
@@ -121,7 +121,7 @@
C99
-
+
In addition to the other topics on this page, we'll note here some
of the C99 features that appear in libstdc++.
diff --git a/libstdc++-v3/doc/xml/manual/parallel_mode.xml b/libstdc++-v3/doc/xml/manual/parallel_mode.xml
index ab7d2f2b56b..cabb9d76a4c 100644
--- a/libstdc++-v3/doc/xml/manual/parallel_mode.xml
+++ b/libstdc++-v3/doc/xml/manual/parallel_mode.xml
@@ -1,4 +1,4 @@
-
@@ -40,7 +40,7 @@ specific compiler flag.
Intro
-
+
The following library components in the include
numeric are included in the parallel mode:
@@ -91,7 +91,7 @@ specific compiler flag.
Semantics
-
+
The parallel mode STL algorithms are currently not exception-safe,
i.e. user-defined functors must not throw exceptions.
@@ -109,10 +109,10 @@ It might work with other compilers, though.Using
-
+
Prerequisite Compiler Flags
-
+
Any use of parallel functionality requires additional compiler
@@ -140,7 +140,7 @@ In addition, hardware that supports atomic operations and a compiler
Using Parallel Mode
-
+
To use the libstdc++ parallel mode, compile your application with
@@ -165,7 +165,7 @@ In addition, hardware that supports atomic operations and a compiler
Using Specific Parallel Components
-
+
When it is not feasible to recompile your entire application, or
only specific algorithms need to be parallel-aware, individual
@@ -476,11 +476,11 @@ flags for atomic operations.)
Design
-
+
Interface Basics
-
+
All parallel algorithms are intended to have signatures that are
@@ -549,11 +549,11 @@ overload is therefore missing.
Configuration and Tuning
-
+
Setting up the OpenMP Environment
-
+
Several aspects of the overall runtime environment can be manipulated
@@ -598,7 +598,7 @@ documentation for more information.
Compile Time Switches
-
+
To force an algorithm to execute sequentially, even though parallelism
@@ -675,7 +675,7 @@ merging. The quicksort options cannot be used for stable_sort.
Run Time Settings and Defaults
-
+
The default parallelization strategy, the choice of specific algorithm
@@ -769,7 +769,7 @@ int main()
Implementation Namespaces
-
+
One namespace contain versions of code that are always
explicitly sequential:
@@ -803,7 +803,7 @@ the generated source documentation.
Testing
-
+
Both the normal conformance and regression tests and the
diff --git a/libstdc++-v3/doc/xml/manual/policy_data_structures.xml b/libstdc++-v3/doc/xml/manual/policy_data_structures.xml
index 107018043ae..3e598105f7e 100644
--- a/libstdc++-v3/doc/xml/manual/policy_data_structures.xml
+++ b/libstdc++-v3/doc/xml/manual/policy_data_structures.xml
@@ -3003,7 +3003,7 @@
-
+
Let U be a domain (e.g., the integers, or the
strings of 3 characters). A hash-table algorithm needs to map
elements of U "uniformly" into the range [0,..., m -
@@ -3179,7 +3179,7 @@
0t - 1 si ai mod m
-
+
where a is some non-negative integral value. This is
the standard string-hashing function used in SGI's
@@ -3202,7 +3202,7 @@
f2(s, m) = â i
- = 0k - 1 si ai mod m
+ = 0k - 1 si ai mod m
@@ -3278,7 +3278,7 @@
-
+
If cc_hash_table's
hash-functor, Hash_Fn is instantiated by null_type , then Comb_Hash_Fn is taken to be
a ranged-hash function. The graphic below shows an insert sequence
@@ -3298,7 +3298,7 @@
-
+
@@ -3459,7 +3459,7 @@
Probability of Probe Sequence of Length k
- p1 =
+ p1 =
@@ -3486,7 +3486,7 @@
Probability Probe Sequence in Some Bin
- P( existsi li ⥠k ) =
+ P( existsi li ⥠k ) =
@@ -3640,7 +3640,7 @@
The graphic below gives an overall picture of the resize-related
classes. basic_hash_table
is parametrized by Resize_Policy, which it subclasses
- publicly. This class is currently instantiated only by hash_standard_resize_policy.
+ publicly. This class is currently instantiated only by hash_standard_resize_policy.
hash_standard_resize_policy
itself is parametrized by Trigger_Policy and
Size_Policy. Currently, Trigger_Policy is
@@ -3917,7 +3917,7 @@
-
+
Supporting such trees is difficult for a number of
reasons:
@@ -3983,7 +3983,7 @@
node_end() const;
node_iterator
- node_end();
+ node_end();
The first pairs return node iterators corresponding to the
@@ -4026,7 +4026,7 @@
node_update must also define the following method
for restoring node invariants:
- void
+ void
operator()(node_iterator nd_it, const_node_iterator end_nd_it)
@@ -4172,7 +4172,7 @@
-
+ Split and Join
@@ -4247,8 +4247,8 @@
currently illegal.Following is a description of a (PATRICIA) trie
- (this implementation follows and
- ).
+ (this implementation follows and
+ ).
A (PATRICIA) trie is similar to a tree, but with the
@@ -4615,7 +4615,7 @@
which unconditionally move an accessed element to the front of
the list. The latter type is very useful in this library,
since there is no need to associate metadata with each element.
- (See
+ (See
@@ -4717,7 +4717,7 @@
binomial_heap_tag,
rc_binomial_heap_tag,
or thin_heap_tag,
- specifies, respectively,
+ specifies, respectively,
an underlying pairing heap (),
binary heap (),
binomial heap (),
@@ -4819,7 +4819,7 @@
assert(p.top() == 3);
-
+
It should be noted that an alternative design could embed an
associative container in a priority queue. Could, but most
probably should not. To begin with, it should be noted that one
@@ -4944,7 +4944,7 @@
Of course, one can use any order-preserving associative
container as a priority queue, as in the graphic above label C, possibly by creating an adapter class
- over the associative container (much as
+ over the associative container (much as
std::priority_queue can adapt std::vector).
This has the advantage that no cross-referencing is necessary
at all; the priority queue itself is an associative container.
@@ -4969,7 +4969,7 @@
types. __gnu_pbds::priority_queue
publicly defines container_category as one of the tags. Given any
container Cntnr, the tag of the underlying
- data structure can be found via typename
+ data structure can be found via typename
Cntnr::container_category; this is one of the possible tags shown in the graphic below.
@@ -4994,7 +4994,7 @@
container.To find if a container might throw if two of its objects are
- joined, one can use
+ joined, one can use
container_traits<Cntnr>::split_join_can_throw
diff --git a/libstdc++-v3/doc/xml/manual/prerequisites.xml b/libstdc++-v3/doc/xml/manual/prerequisites.xml
index aa677647555..22e90a7e79d 100644
--- a/libstdc++-v3/doc/xml/manual/prerequisites.xml
+++ b/libstdc++-v3/doc/xml/manual/prerequisites.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/shared_ptr.xml b/libstdc++-v3/doc/xml/manual/shared_ptr.xml
index 24e275e95eb..06fc662e6ef 100644
--- a/libstdc++-v3/doc/xml/manual/shared_ptr.xml
+++ b/libstdc++-v3/doc/xml/manual/shared_ptr.xml
@@ -1,4 +1,4 @@
-
@@ -60,7 +60,7 @@ technique known as type erasure.
Class Hierarchy
-
+
A shared_ptr<T> contains a pointer of
@@ -156,7 +156,7 @@ deprecated in C++11 mode.
Thread Safety
-
+
The
Thread
@@ -214,7 +214,7 @@ Policy below for details.
Selecting Lock Policy
-
+
@@ -351,7 +351,7 @@ be private.
Examples
-
+
Examples of use can be found in the testsuite, under
testsuite/tr1/2_general_utilities/shared_ptr,
@@ -362,7 +362,7 @@ be private.
Unresolved Issues
-
+
The shared_ptr atomic access
clause in the C++11 standard is not implemented in GCC.
diff --git a/libstdc++-v3/doc/xml/manual/spine.xml b/libstdc++-v3/doc/xml/manual/spine.xml
index 4db3037ac4d..34daa33344c 100644
--- a/libstdc++-v3/doc/xml/manual/spine.xml
+++ b/libstdc++-v3/doc/xml/manual/spine.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml b/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml
index b9e415d21ac..021cb6394a7 100644
--- a/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml
+++ b/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/status_cxxtr24733.xml b/libstdc++-v3/doc/xml/manual/status_cxxtr24733.xml
index 92d892da8ac..139b94442e8 100644
--- a/libstdc++-v3/doc/xml/manual/status_cxxtr24733.xml
+++ b/libstdc++-v3/doc/xml/manual/status_cxxtr24733.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/strings.xml b/libstdc++-v3/doc/xml/manual/strings.xml
index 1c7ab4ca706..e9d4c8ce347 100644
--- a/libstdc++-v3/doc/xml/manual/strings.xml
+++ b/libstdc++-v3/doc/xml/manual/strings.xml
@@ -1,4 +1,4 @@
-
@@ -16,10 +16,10 @@
String Classes
-
+
Simple Transformations
-
+
Here are Standard, simple, and portable ways to perform common
transformations on a string instance, such as
@@ -115,7 +115,7 @@
Case Sensitivity
-
+
@@ -166,7 +166,7 @@
Arbitrary Character Types
-
+
@@ -238,7 +238,7 @@
Tokenizing
-
+
The Standard C (and C++) function strtok() leaves a lot to
@@ -337,7 +337,7 @@ stringtok(Container &container, string const &in,
Shrink to Fit
-
+
From GCC 3.4 calling s.reserve(res) on a
@@ -365,7 +365,7 @@ stringtok(Container &container, string const &in,
CString (MFC)
-
+
diff --git a/libstdc++-v3/doc/xml/manual/support.xml b/libstdc++-v3/doc/xml/manual/support.xml
index da8fed0e015..f4b41664f60 100644
--- a/libstdc++-v3/doc/xml/manual/support.xml
+++ b/libstdc++-v3/doc/xml/manual/support.xml
@@ -1,4 +1,4 @@
-
diff --git a/libstdc++-v3/doc/xml/manual/test.xml b/libstdc++-v3/doc/xml/manual/test.xml
index 19bc9e81ff3..ee00b06e385 100644
--- a/libstdc++-v3/doc/xml/manual/test.xml
+++ b/libstdc++-v3/doc/xml/manual/test.xml
@@ -1,4 +1,4 @@
-
@@ -235,7 +235,7 @@ cat 27_io/objects/char/3_xin.in | a.out
Basic
-
+
You can check the status of the build without installing it
@@ -275,7 +275,7 @@ cat 27_io/objects/char/3_xin.in | a.out
Variations
-
+
There are several options for running tests, including testing
the regression tests, testing a subset of the regression tests,
@@ -552,7 +552,7 @@ cat 27_io/objects/char/3_xin.in | a.out
Permutations
-
+
The tests will be compiled with a set of default compiler flags defined
by the
diff --git a/libstdc++-v3/doc/xml/manual/test_policy_data_structures.xml b/libstdc++-v3/doc/xml/manual/test_policy_data_structures.xml
index ea35efa22b9..cb5b016569a 100644
--- a/libstdc++-v3/doc/xml/manual/test_policy_data_structures.xml
+++ b/libstdc++-v3/doc/xml/manual/test_policy_data_structures.xml
@@ -3835,7 +3835,7 @@
- Text find with Small Secondary-to-Primary Key Ratios
+ Text find with Small Secondary-to-Primary Key Ratios
@@ -4299,7 +4299,7 @@
- Text find with Large Secondary-to-Primary Key Ratios
+ Text find with Large Secondary-to-Primary Key Ratios
diff --git a/libstdc++-v3/doc/xml/manual/using.xml b/libstdc++-v3/doc/xml/manual/using.xml
index 60c5238555e..24543e9526e 100644
--- a/libstdc++-v3/doc/xml/manual/using.xml
+++ b/libstdc++-v3/doc/xml/manual/using.xml
@@ -1,10 +1,10 @@
-UsingCommand Options
-
+
The set of features available in the GNU C++ library is shaped by
several GCC
@@ -107,7 +107,7 @@
-fopenmpFor parallel mode.
-
+
-ltbbLinking to tbb (Thread Building Blocks) is required for use of the
@@ -115,7 +115,7 @@
<execution>.
-
+
@@ -125,10 +125,10 @@
Headers
-
+
Header Files
-
+
The C++ standard specifies the entire set of header files that
@@ -523,7 +523,7 @@ compilation errors, but will not define anything.
,
-shows the additional include files define by the C++ Extensions for
+shows the additional include files define by the C++ Extensions for
Library Fundamentals Technical Specification, ISO/IEC TS 19568.
These are available in C++14 and later compilation modes.
Including these headers in earlier modes will not result in
@@ -822,7 +822,7 @@ compiler supports scalar decimal floating-point types defined via
Mixing Headers
-
+
A few simple rules.
@@ -865,7 +865,7 @@ same translation unit:
The C Headers and namespace std
-
+
The standard specifies that if one includes the C-style header
@@ -892,7 +892,7 @@ and std::sinl.
Precompiled Headers
-
+
There are three base header files that are provided. They can be
@@ -973,7 +973,7 @@ g++ -Winvalid-pch -I. -include stdc++.h -H -g -O2 hello.cc -o test.exe
Macros
-
+
All library macros begin with _GLIBCXX_.
@@ -1290,10 +1290,10 @@ g++ -Winvalid-pch -I. -include stdc++.h -H -g -O2 hello.cc -o test.exe
Namespaces
-
+
Available Namespaces
-
+
@@ -1334,7 +1334,7 @@ details that are not intended for users to refer to directly, these include
namespace std
-
+
@@ -1360,7 +1360,7 @@ cases where the qualified verbiage becomes unwieldy.)
Using Namespace Composition
-
+
Best practice in programming suggests sequestering new data or
@@ -1407,10 +1407,10 @@ namespace gtk
Linking
-
+
Almost Nothing
-
+
Or as close as it gets: freestanding. This is a minimal
configuration, with only partial support for the standard
@@ -1514,7 +1514,7 @@ namespace gtk
Finding Dynamic or Shared Libraries
-
+
If the only library built is the static library
@@ -1638,7 +1638,7 @@ A quick read of the relevant part of the GCC
Concurrency
-
+
This section discusses issues surrounding the proper compilation
of multithreaded applications which use the Standard C++
@@ -1647,7 +1647,7 @@ A quick read of the relevant part of the GCC
Prerequisites
-
+
All normal disclaimers aside, multithreaded C++ application are
only supported when libstdc++ and all user code was built with
@@ -1686,7 +1686,7 @@ A quick read of the relevant part of the GCC
Thread Safety
-
+
In the terms of the 2011 C++ standard a thread-safe program is one which
@@ -1803,7 +1803,7 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
begin, end, rbegin, rend,
front, back, data,
find, lower_bound, upper_bound,
- equal_range, at
+ equal_range, at
and, except in associative or unordered associative containers,
operator[]. In other words, although they are non-const
so that they can return mutable iterators, those member functions
@@ -1831,8 +1831,8 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
int i = *global_sp; // OK, operator* is const
int j = *local_sp; // OK, does not operate on global_sp
- // *global_sp = 2; // NOT OK, modifies int visible to other threads
- // *local_sp = 2; // NOT OK, modifies int visible to other threads
+ // *global_sp = 2; // NOT OK, modifies int visible to other threads
+ // *local_sp = 2; // NOT OK, modifies int visible to other threads
// global_sp.reset(); // NOT OK, reset is non-const
local_sp.reset(); // OK, does not operate on global_sp
@@ -1849,24 +1849,24 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
For further details of the C++11 memory model see Hans-J. Boehm's
Threads
- and memory model for C++ pages, particularly the introduction
+ and memory model for C++ pages, particularly the introduction
and FAQ.
Atomics
-
+
IO
-
+
This gets a bit tricky. Please read carefully, and bear with me.
Structure
-
+
A wrapper
type called __basic_file provides our abstraction layer
for the std::filebuf classes. Nearly all decisions dealing
@@ -1880,7 +1880,7 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
Defaults
-
+
The __basic_file type is simply a collection of small wrappers around
the C stdio layer (again, see the link under Structure). We do no
locking ourselves, but simply pass through to calls to fopen,
@@ -1911,7 +1911,7 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
Future
-
+
A
second choice may be available for I/O implementations: libio. This is
disabled by default, and in fact will not currently work due to other
@@ -1944,7 +1944,7 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
Alternatives
-
+
Don't forget that other cstdio implementations are possible. You could
easily write one to perform your own forms of locking, to solve your
"interesting" problems.
@@ -1954,7 +1954,7 @@ gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
Containers
-
+
This section discusses issues surrounding the design of
multithreaded applications which use Standard C++ containers.
diff --git a/libstdc++-v3/doc/xml/manual/using_exceptions.xml b/libstdc++-v3/doc/xml/manual/using_exceptions.xml
index 485b269a59e..32bff85549f 100644
--- a/libstdc++-v3/doc/xml/manual/using_exceptions.xml
+++ b/libstdc++-v3/doc/xml/manual/using_exceptions.xml
@@ -1,4 +1,4 @@
-
@@ -451,7 +451,7 @@ is called.
Error and Exception Handling
-
+
DavidAbrahams
@@ -468,7 +468,7 @@ is called.
Exception-Safety in Generic Components
-
+
DavidAbrahams
diff --git a/libstdc++-v3/doc/xml/manual/utilities.xml b/libstdc++-v3/doc/xml/manual/utilities.xml
index 469d85f4109..e155c8c3943 100644
--- a/libstdc++-v3/doc/xml/manual/utilities.xml
+++ b/libstdc++-v3/doc/xml/manual/utilities.xml
@@ -1,4 +1,4 @@
-
@@ -17,7 +17,7 @@
Functors
-
+
If you don't know what functors are, you're not alone. Many people
get slightly the wrong idea. In the interest of not reinventing
the wheel, we will refer you to the introduction to the functor
@@ -30,7 +30,7 @@
Pairs
-
+
The pair<T1,T2> is a simple and handy way to
carry around a pair of objects. One is of type T1, and another of
type T2; they may be the same type, but you don't get anything
@@ -85,7 +85,7 @@
Memory
-
+
Memory contains three general areas. First, function and operator
calls via new and delete
@@ -111,7 +111,7 @@
Traits
-
+