From: Benjamin Kosnik Date: Thu, 10 Apr 2008 22:14:17 +0000 (+0000) Subject: [multiple changes] X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4394b61e02706f4315e0cb68d728e2e5019788c4;p=gcc.git [multiple changes] 2008-04-10 Benjamin Kosnik * doc/html/*: Regenerate. 2008-04-10 Ralf Wildenhues * doc/xml/manual/bitmap_allocator.xml: Improve wording a bit. * doc/xml/authors.xml: Fix typos. * doc/xml/faq.xml: Likewise. * doc/xml/manual/abi.xml: Likewise. * doc/xml/manual/allocator.xml: Likewise. * doc/xml/manual/appendix_contributing.xml: Likewise. * doc/xml/manual/backwards_compatibility.xml: Likewise. * doc/xml/manual/build_hacking.xml: Likewise. * doc/xml/manual/codecvt.xml: Likewise. * doc/xml/manual/concurrency.xml: Likewise. * doc/xml/manual/ctype.xml: Likewise. * doc/xml/manual/debug_mode.xml: Likewise. * doc/xml/manual/diagnostics.xml: Likewise. * doc/xml/manual/evolution.xml: Likewise. * doc/xml/manual/extensions.xml: Likewise. * doc/xml/manual/locale.xml: Likewise. * doc/xml/manual/messages.xml: Likewise. * doc/xml/manual/parallel_mode.xml: Likewise. * doc/xml/manual/status_cxx200x.xml: Likewise. * doc/xml/manual/strings.xml: Likewise. * doc/xml/manual/support.xml: Likewise. * doc/xml/manual/test.xml: Likewise. * doc/xml/manual/using.xml: Likewise. 2008-04-10 Benjamin Kosnik Johannes Singler * doc/xml/manual/parallel_mode.xml: Remove map/set bulk insertors. Correct omp_set_num_threads example. From-SVN: r134178 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 838bf2e03f0..0c6e5206916 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,39 @@ +2008-04-10 Benjamin Kosnik + + * doc/html/*: Regenerate. + +2008-04-10 Ralf Wildenhues + + * doc/xml/manual/bitmap_allocator.xml: Improve wording a bit. + * doc/xml/authors.xml: Fix typos. + * doc/xml/faq.xml: Likewise. + * doc/xml/manual/abi.xml: Likewise. + * doc/xml/manual/allocator.xml: Likewise. + * doc/xml/manual/appendix_contributing.xml: Likewise. + * doc/xml/manual/backwards_compatibility.xml: Likewise. + * doc/xml/manual/build_hacking.xml: Likewise. + * doc/xml/manual/codecvt.xml: Likewise. + * doc/xml/manual/concurrency.xml: Likewise. + * doc/xml/manual/ctype.xml: Likewise. + * doc/xml/manual/debug_mode.xml: Likewise. + * doc/xml/manual/diagnostics.xml: Likewise. + * doc/xml/manual/evolution.xml: Likewise. + * doc/xml/manual/extensions.xml: Likewise. + * doc/xml/manual/locale.xml: Likewise. + * doc/xml/manual/messages.xml: Likewise. + * doc/xml/manual/parallel_mode.xml: Likewise. + * doc/xml/manual/status_cxx200x.xml: Likewise. + * doc/xml/manual/strings.xml: Likewise. + * doc/xml/manual/support.xml: Likewise. + * doc/xml/manual/test.xml: Likewise. + * doc/xml/manual/using.xml: Likewise. + +2008-04-10 Benjamin Kosnik + Johannes Singler + + * doc/xml/manual/parallel_mode.xml: Remove map/set bulk + insertors. Correct omp_set_num_threads example. + 2008-04-10 Benjamin Kosnik * include/c_global/cstdatomic: C++ types only, format, doxygen markup. diff --git a/libstdc++-v3/doc/html/api.html b/libstdc++-v3/doc/html/api.html index 6724b72ade2..0d07dc9aed1 100644 --- a/libstdc++-v3/doc/html/api.html +++ b/libstdc++-v3/doc/html/api.html @@ -5,7 +5,7 @@ FSF -


diff --git a/libstdc++-v3/doc/html/faq.html b/libstdc++-v3/doc/html/faq.html index b46c2b7ab5a..b4c548309fb 100644 --- a/libstdc++-v3/doc/html/faq.html +++ b/libstdc++-v3/doc/html/faq.html @@ -487,7 +487,7 @@ enough to detect when the minimal support to enable wchar_t and C++ library structures like wstring were present. This impacted Solaris, - Darwin, and BSD varients, and is fixed in libstdc++ versions post 4.1.0. + Darwin, and BSD variants, and is fixed in libstdc++ versions post 4.1.0.

5. Known Bugs

5.1. What works already? @@ -777,7 +777,7 @@

7.4.

Extensions and Backward Compatibility

- See the link on backwards compatiblity and link on evolution. + See the link on backwards compatibility and link on evolution.

7.5.

Does libstdc++ support TR1?

diff --git a/libstdc++-v3/doc/html/manual/abi.html b/libstdc++-v3/doc/html/manual/abi.html index d86bb47918b..1be31b3f575 100644 --- a/libstdc++-v3/doc/html/manual/abi.html +++ b/libstdc++-v3/doc/html/manual/abi.html @@ -54,7 +54,7 @@ given compiler ABI. In a nutshell: created with the same constraints.

To use a specific version of the C++ ABI, one must use a - corresponding GNU C++ toolchain (Ie, g++ and libstdc++) that + corresponding GNU C++ toolchain (i.e., g++ and libstdc++) that implements the C++ ABI in question.

Versioning

The C++ interface has evolved throughout the history of the GNU C++ toolchain. With each release, various details have been changed so @@ -84,7 +84,7 @@ release of the series to remain link compatible. others, this is libgcc_s.so.1.

  • Symbol versioning on the libgcc_s.so binary.

    It is versioned with the following labels and version definitions, where the version definition is the maximum for a particular release. Labels are cumulative. If a particular release - is not listed, it has the same version labels as the preceeding + is not listed, it has the same version labels as the preceding release.

    This corresponds to the mapfile: gcc/libgcc-std.ver

    • gcc-3.0.0: GCC_3.0

    • gcc-3.3.0: GCC_3.3

    • gcc-3.3.1: GCC_3.3.1

    • gcc-3.3.2: GCC_3.3.2

    • gcc-3.3.4: GCC_3.3.4

    • gcc-3.4.0: GCC_3.4

    • gcc-3.4.2: GCC_3.4.2

    • gcc-3.4.4: GCC_3.4.4

    • gcc-4.0.0: GCC_4.0.0

    • gcc-4.1.0: GCC_4.1.0

    • gcc-4.2.0: GCC_4.2.0

  • Release versioning on the libstdc++.so binary, implemented in the same was as the libgcc_s.so binary, above.

    It is versioned as follows:

    • gcc-3.0.0: libstdc++.so.3.0.0

    • gcc-3.0.1: libstdc++.so.3.0.1

    • gcc-3.0.2: libstdc++.so.3.0.2

    • gcc-3.0.3: libstdc++.so.3.0.2 (Error should be libstdc++.so.3.0.3)

    • gcc-3.0.4: libstdc++.so.3.0.4

    • gcc-3.1.0: libstdc++.so.4.0.0

    • gcc-3.1.1: libstdc++.so.4.0.1

    • gcc-3.2.0: libstdc++.so.5.0.0

    • gcc-3.2.1: libstdc++.so.5.0.1

    • gcc-3.2.2: libstdc++.so.5.0.2

    • gcc-3.2.3: libstdc++.so.5.0.3 (Not strictly required)

    • gcc-3.3.0: libstdc++.so.5.0.4

    • gcc-3.3.1: libstdc++.so.5.0.5

    • gcc-3.3.2: libstdc++.so.5.0.5

    • gcc-3.3.3: libstdc++.so.5.0.5

    • gcc-3.4.0: libstdc++.so.6.0.0

    • gcc-3.4.1: libstdc++.so.6.0.1

    • gcc-3.4.2: libstdc++.so.6.0.2

    • gcc-3.4.3: libstdc++.so.6.0.3

    • gcc-3.4.4: libstdc++.so.6.0.3

    • gcc-3.4.5: libstdc++.so.6.0.3

    • gcc-3.4.6: libstdc++.so.6.0.3

    • gcc-4.0.0: libstdc++.so.6.0.4

    • gcc-4.0.1: libstdc++.so.6.0.5

    • gcc-4.0.2: libstdc++.so.6.0.6

    • gcc-4.0.3: libstdc++.so.6.0.7

    • gcc-4.1.0: libstdc++.so.6.0.7

    • gcc-4.1.1: libstdc++.so.6.0.8

    • gcc-4.1.2: libstdc++.so.6.0.8

    • gcc-4.2.0: libstdc++.so.6.0.9

  • Symbol versioning on the libstdc++.so binary.

    mapfile: libstdc++/config/linker-map.gnu

    It is versioned with the following labels and version definitions, where the version definition is the maximum for a @@ -95,7 +95,7 @@ release of the series to remain link compatible. gcc-3.2.1 release, which has GLIBCPP_3.2.1 for new symbols and GLIBCPP_3.2 for symbols that were introduced in the gcc-3.2.0 release.) If a particular release is not listed, it has the same - version labels as the preceeding release. + version labels as the preceding release.

    • gcc-3.0.0: (Error, not versioned)

    • gcc-3.0.1: (Error, not versioned)

    • gcc-3.0.2: (Error, not versioned)

    • gcc-3.0.3: (Error, not versioned)

    • gcc-3.0.4: (Error, not versioned)

    • gcc-3.1.0: GLIBCPP_3.1, CXXABI_1

    • gcc-3.1.1: GLIBCPP_3.1, CXXABI_1

    • gcc-3.2.0: GLIBCPP_3.2, CXXABI_1.2

    • gcc-3.2.1: GLIBCPP_3.2.1, CXXABI_1.2

    • gcc-3.2.2: GLIBCPP_3.2.2, CXXABI_1.2

    • gcc-3.2.3: GLIBCPP_3.2.2, CXXABI_1.2

    • gcc-3.3.0: GLIBCPP_3.2.2, CXXABI_1.2.1

    • gcc-3.3.1: GLIBCPP_3.2.3, CXXABI_1.2.1

    • gcc-3.3.2: GLIBCPP_3.2.3, CXXABI_1.2.1

    • gcc-3.3.3: GLIBCPP_3.2.3, CXXABI_1.2.1

    • gcc-3.4.0: GLIBCXX_3.4, CXXABI_1.3

    • gcc-3.4.1: GLIBCXX_3.4.1, CXXABI_1.3

    • gcc-3.4.2: GLIBCXX_3.4.2

    • gcc-3.4.3: GLIBCXX_3.4.3

    • gcc-4.0.0: GLIBCXX_3.4.4, CXXABI_1.3.1

    • gcc-4.0.1: GLIBCXX_3.4.5

    • gcc-4.0.2: GLIBCXX_3.4.6

    • gcc-4.0.3: GLIBCXX_3.4.7

    • gcc-4.1.1: GLIBCXX_3.4.8

    • gcc-4.2.0: GLIBCXX_3.4.9

  • Incremental bumping of a compiler pre-defined macro, __GXX_ABI_VERSION. This macro is defined as the version of the compiler v3 ABI, with g++ 3.0.x being version 100. This macro will @@ -287,7 +287,7 @@ class in registers, the compiler will be forced to use memory. See

    namespace std

    Defaults to exporting all symbols in label -GLIBCXX that do not begin with an underscore, ie +GLIBCXX that do not begin with an underscore, i.e., __test_func would not be exported by default. Select exceptional symbols are allowed to be visible.

    namespace __gnu_cxx

    Defaults to not exporting any symbols in label GLIBCXX, select items are allowed to be visible.

    namespace __gnu_internal

    Defaults to not exported, no items are allowed to be visible.

    namespace __cxxabiv1, aliased to namespace abi

    Defaults to not exporting any symbols in label @@ -428,7 +428,7 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so. difficult. In particular, compiler generated constructs such as implicit instantiations for templates, typeinfo information, and virtual tables all may cause ABI leakage across shared library - boundaries. Because of this, mixing C++ ABI's is not recommended at + boundaries. Because of this, mixing C++ ABIs is not recommended at this time.

    For more background on this issue, see these bugzilla entries: @@ -436,54 +436,54 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so. 24660: versioning weak symbols in libstdc++

    19664: libstdc++ headers should have pop/push of the visibility around the declarations -

    Bibliography

    +

    Bibliography

    ABIcheck, a vague idea of checking ABI compatibility . - .

    + .

    C++ ABI Reference . - .

    + .

    Intel® Compilers for Linux* -Compatibility with the GNU Compilers . - .

    + .

    Intel® Compilers for Linux* -Compatibility with the GNU Compilers . - .

    + .

    Sun Solaris 2.9 : Linker and Libraries Guide (document 816-1386) . - .

    + .

    Sun Solaris 2.9 : C++ Migration Guide (document 816-2459) . - .

    + .

    ELF Symbol Versioning . Ulrich Drepper. - .

    + .

    C++ ABI for the ARM Architecture . - .

    + .

    Dynamic Shared Objects: Survey and Issues . ISO C++ J16/06-0046 . Benjamin Kosnik. - .

    + .

    Versioning With Namespaces . ISO C++ J16/06-0083 diff --git a/libstdc++-v3/doc/html/manual/api.html b/libstdc++-v3/doc/html/manual/api.html index 6da7e73c058..c8c6d0e220c 100644 --- a/libstdc++-v3/doc/html/manual/api.html +++ b/libstdc++-v3/doc/html/manual/api.html @@ -1,7 +1,7 @@ API Evolution and Deprecation History

    API Evolution and Deprecation History

    -A list of user-visible changes, in cronological order +A list of user-visible changes, in chronological order

    3.0

    Extensions moved to include/ext.

    @@ -52,7 +52,7 @@ _Alloc_traits have been removed.

    Default behavior of std::allocator has changed.

    Previous versions prior to 3.4 cache allocations in a memory pool, instead of passing through to call the global allocation - operators (ie, __gnu_cxx::pool_allocator). More + operators (i.e., __gnu_cxx::pool_allocator). More recent versions default to the simpler __gnu_cxx::new_allocator.

    Previously, all allocators were written to the SGI @@ -72,11 +72,11 @@ _Alloc_traits have been removed. __alloc to select an underlying allocator that satisfied memory allocation requests. The selection of this underlying allocator was not user-configurable. -

    Table B.1. Extension Allocators

    Allocator (3.4)Header (3.4)Allocator (3.[0-3])Header (3.[0-3])
    __gnu_cxx::new_allocator<T>ext/new_allocator.hstd::__new_allocmemory
    __gnu_cxx::malloc_allocator<T>ext/malloc_allocator.hstd::__malloc_alloc_template<int>memory
    __gnu_cxx::debug_allocator<T>ext/debug_allocator.hstd::debug_alloc<T>memory
    __gnu_cxx::__pool_alloc<T>ext/pool_allocator.hstd::__default_alloc_template<bool,int>memory
    __gnu_cxx::__mt_alloc<T>ext/mt_allocator.h
    __gnu_cxx::bitmap_allocator<T>ext/bitmap_allocator.h

    Releases after gcc-3.4 have continued to add to the collection +

    Table B.1. Extension Allocators

    Allocator (3.4)Header (3.4)Allocator (3.[0-3])Header (3.[0-3])
    __gnu_cxx::new_allocator<T>ext/new_allocator.hstd::__new_allocmemory
    __gnu_cxx::malloc_allocator<T>ext/malloc_allocator.hstd::__malloc_alloc_template<int>memory
    __gnu_cxx::debug_allocator<T>ext/debug_allocator.hstd::debug_alloc<T>memory
    __gnu_cxx::__pool_alloc<T>ext/pool_allocator.hstd::__default_alloc_template<bool,int>memory
    __gnu_cxx::__mt_alloc<T>ext/mt_allocator.h
    __gnu_cxx::bitmap_allocator<T>ext/bitmap_allocator.h

    Releases after gcc-3.4 have continued to add to the collection of available allocators. All of these new allocators are standard-style. The following table includes details, along with the first released version of GCC that included the extension allocator. -

    Table B.2. Extension Allocators Continued

    AllocatorIncludeVersion
    __gnu_cxx::array_allocator<T>ext/array_allocator.h4.0.0
    __gnu_cxx::throw_allocator<T>ext/throw_allocator.h4.2.0

    +

    Table B.2. Extension Allocators Continued

    AllocatorIncludeVersion
    __gnu_cxx::array_allocator<T>ext/array_allocator.h4.0.0
    __gnu_cxx::throw_allocator<T>ext/throw_allocator.h4.2.0

    Debug mode first appears.

    Precompiled header support PCH support. diff --git a/libstdc++-v3/doc/html/manual/appendix_contributing.html b/libstdc++-v3/doc/html/manual/appendix_contributing.html index 007c7fe52a6..08032d04056 100644 --- a/libstdc++-v3/doc/html/manual/appendix_contributing.html +++ b/libstdc++-v3/doc/html/manual/appendix_contributing.html @@ -1,6 +1,6 @@ -Appendix A. Contributing

    Appendix A. Contributing

    +Appendix A. Contributing

    Appendix A. Contributing

    The GNU C++ Library follows an open development model. Active contributors are assigned maintainer-ship responsibility, and given write access to the source repository. First time contributors diff --git a/libstdc++-v3/doc/html/manual/appendix_porting.html b/libstdc++-v3/doc/html/manual/appendix_porting.html index 001943516a3..9cd2ebf224e 100644 --- a/libstdc++-v3/doc/html/manual/appendix_porting.html +++ b/libstdc++-v3/doc/html/manual/appendix_porting.html @@ -47,7 +47,7 @@ discourage that.

    Coding and Commenting Conventions

    Most comments should use {octothorpes, shibboleths, hash marks, - pound signs, whatevers} rather than "dnl". Nearly all comments in + pound signs, whatever} rather than "dnl". Nearly all comments in configure.ac should. Comments inside macros written in ancilliary .m4 files should. About the only comments which should not use #, but use dnl instead, are comments diff --git a/libstdc++-v3/doc/html/manual/backwards.html b/libstdc++-v3/doc/html/manual/backwards.html index 3bdf1937aad..6475a7e8a25 100644 --- a/libstdc++-v3/doc/html/manual/backwards.html +++ b/libstdc++-v3/doc/html/manual/backwards.html @@ -14,8 +14,8 @@ ISO Standard (e.g., statistical analysis). While there are a lot of really useful things that are used by a lot of people, the Standards Committee couldn't include everything, and so a lot of those “obvious” classes didn't get included. -

    Known Issues include many of the limitations of its immediate ancestor.

    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. -

    No cout in ostream.h, no cin in istream.h

    +

    Known Issues include many of the limitations of its immediate ancestor.

    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. +

    No cout in ostream.h, no cin in istream.h

    In earlier versions of the standard, fstream.h, ostream.h @@ -41,7 +41,7 @@ considered replaced and rewritten. archived. The code is considered replaced and rewritten.

    Portability notes and known implementation limitations are as follows. -

    Namespace std:: not supported

    +

    Namespace std:: not supported

    Some care is required to support C++ compiler and or library implementation that do not have the standard library in namespace std. @@ -77,7 +77,7 @@ considered replaced and rewritten. then using that to set a value for the NAMESPACE_STD macro. At that point, one is able to use NAMESPACE_STD::string, which will evaluate to - std::string or ::string (ie, in the + std::string or ::string (i.e., in the global namespace on systems that do not put string in std::).

    @@ -105,7 +105,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [
         AC_DEFINE(HAVE_NAMESPACE_STD,,[Define if g++ supports namespace std. ])
       fi
     ])
    -

    Illegal iterator usage

    +

    Illegal iterator usage

    The following illustrate implementation-allowed illegal iterator use, and then correct use.

    • @@ -118,7 +118,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [

    • if (iterator) won't work any more => use if (iterator != iterator_type()) -

    isspace from cctype is a macro +

  • isspace from cctype is a macro

    Glibc 2.0.x and 2.1.x define ctype.h functionality as macros (isspace, isalpha etc.). @@ -151,7 +151,7 @@ std:: (__ctype_b[(int) ( ( 'X' ) )] & (unsigned short int) _ISspace ) ; (ctype.h) and the definitions in namespace std:: (<cctype>). -

    No vector::at, deque::at, string::at

    +

    No vector::at, deque::at, string::at

    One solution is to add an autoconf-test for this:

     AC_MSG_CHECKING(for container::at)
    @@ -177,7 +177,7 @@ AC_DEFINE(HAVE_CONTAINER_AT)],
     

    If you are using other (non-GNU) compilers it might be a good idea to check for string::at separately. -

    No std::char_traits<char>::eof

    +

    No std::char_traits<char>::eof

    Use some kind of autoconf test, plus this:

     #ifdef HAVE_CHAR_TRAITS
    @@ -185,7 +185,7 @@ AC_DEFINE(HAVE_CONTAINER_AT)],
     #else
     #define CPP_EOF EOF
     #endif
    -

    No string::clear

    +

    No string::clear

    There are two functions for deleting the contents of a string: clear and erase (the latter returns the string). @@ -200,15 +200,15 @@ erase(size_type __pos = 0, size_type __n = npos) _M_data(), _M_data()); }

    - Unfortunately, ut clear is not implemented in this + Unfortunately, clear is not implemented in this version, so you should use erase (which is probably faster than operator=(charT*)). -

    +

    Removal of ostream::form and istream::scan extensions

    These are no longer supported. Please use stringstreams instead. -

    No basic_stringbuf, basic_stringstream

    +

    No basic_stringbuf, basic_stringstream

    Although the ISO standard i/ostringstream-classes are provided, (sstream), for compatibility with older implementations the pre-ISO @@ -296,14 +296,14 @@ any = temp; Another example of using stringstreams is in this howto.

    There is additional information in the libstdc++-v2 info files, in particular “info iostream”. -

    Little or no wide character support

    +

    Little or no wide character support

    Classes wstring and char_traits<wchar_t> are not supported. -

    No templatized iostreams

    +

    No templatized iostreams

    Classes wfilebuf and wstringstream are not supported. -

    Thread safety issues

    +

    Thread safety issues

    Earlier GCC releases had a somewhat different approach to threading configuration and proper compilation. Before GCC 3.0, configuration of the threading model was dictated by compiler @@ -361,7 +361,7 @@ libstdc++-v3. of the SGI STL (version 3.3), with extensive changes.

    A more formal description of the V3 goals can be found in the official design document. -

    Portability notes and known implementation limitations are as follows.

    Pre-ISO headers moved to backwards or removed

    The pre-ISO C++ headers +

    Portability notes and known implementation limitations are as follows.

    Pre-ISO headers moved to backwards or removed

    The pre-ISO C++ headers (iostream.h, defalloc.h etc.) are available, unlike previous libstdc++ versions, but inclusion generates a warning that you are using deprecated headers. @@ -433,7 +433,7 @@ like vector.h can be replaced with using namespace std; can be put at the global scope. This should be enough to get this code compiling, assuming the other usage is correct. -

    Extension headers hash_map, hash_set moved to ext or backwards

    At this time most of the features of the SGI STL extension have been +

    Extension headers hash_map, hash_set moved to ext or backwards

    At this time most of the features of the SGI STL extension have been replaced by standardized libraries. In particular, the unordered_map and unordered_set containers of TR1 are suitable replacement for the non-standard hash_map and hash_set @@ -505,7 +505,7 @@ AC_DEFUN([AC_HEADER_EXT_HASH_SET], [ AC_DEFINE(HAVE_EXT_HASH_SET,,[Define if ext/hash_set is present. ]) fi ]) -

    No ios::nocreate/ios::noreplace. +

    No ios::nocreate/ios::noreplace.

    The existence of ios::nocreate being used for input-streams has been confirmed, most probably because the author thought it would be more correct to specify nocreate explicitly. So @@ -516,7 +516,7 @@ open the file for reading, check if it has been opened, and then decide whether you want to create/replace or not. To my knowledge, even older implementations support app, ate and trunc (except for app ?). -

    +

    No stream::attach(int fd)

    Phil Edwards writes: It was considered and rejected for the ISO @@ -524,7 +524,7 @@ No stream::attach(int fd) that do, not all of them use integers to represent them.

    For a portable solution (among systems which use - filedescriptors), you need to implement a subclass of + file descriptors), you need to implement a subclass of std::streambuf (or std::basic_streambuf<..>) which opens a file given a descriptor, and then pass an instance of this to the @@ -539,7 +539,7 @@ No stream::attach(int fd) For another example of this, refer to fdstream example by Nicolai Josuttis. -

    +

    Support for C++98 dialect.

    Check for complete library coverage of the C++1998/2003 standard.

    @@ -607,7 +607,7 @@ AC_DEFUN([AC_HEADER_STDCXX_98], [
         AC_DEFINE(STDCXX_98_HEADERS,,[Define if ISO C++ 1998 header files are present. ])
       fi
     ])
    -

    +

    Support for C++TR1 dialect.

    Check for library coverage of the TR1 standard.

    @@ -684,7 +684,7 @@ AC_DEFUN([AC_HEADER_TR1_UNORDERED_SET], [
         AC_DEFINE(HAVE_TR1_UNORDERED_SET,,[Define if tr1/unordered_set is present. ])
       fi
     ])
    -

    +

    Support for C++0x dialect.

    Check for baseline language coverage in the compiler for the C++0xstandard.

    @@ -896,27 +896,27 @@ AC_DEFUN([AC_HEADER_UNORDERED_SET], [
         AC_DEFINE(HAVE_UNORDERED_SET,,[Define if unordered_set is present. ])
       fi
     ])
    -

    +

    Container::iterator_type is not necessarily Container::value_type*

    This is a change in behavior from the previous version. Now, most iterator_type typedefs in container classes are POD objects, not value_type pointers. -

    Bibliography

    [ +

    Bibliography

    [ kegel41 ] Migrating to GCC 4.1 . Dan Kegel. - .

    [ + .

    [ kegel41 ] Building the Whole Debian Archive with GCC 4.1: A Summary . Martin Michlmayr. - .

    [ + .

    [ lbl32 ] Migration guide for GCC-3.2 diff --git a/libstdc++-v3/doc/html/manual/bitmap_allocator.html b/libstdc++-v3/doc/html/manual/bitmap_allocator.html index 88b44157bd7..3aa04e1ed8e 100644 --- a/libstdc++-v3/doc/html/manual/bitmap_allocator.html +++ b/libstdc++-v3/doc/html/manual/bitmap_allocator.html @@ -103,7 +103,7 @@ else return false.

    Consider a block of size 64 ints. In memory, it would look like this: (assume a 32-bit system where, size_t is a 32-bit entity). -

    Table 32.1. Bitmap Allocator Memory Map

    268042949672954294967295Data -> Space for 64 ints

    +

    Table 32.1. Bitmap Allocator Memory Map

    268042949672954294967295Data -> Space for 64 ints

    The first Column(268) represents the size of the Block in bytes as seen by the Bitmap Allocator. Internally, a global free list is used to keep track of the free blocks used and given back by the @@ -141,8 +141,8 @@ else return false.

    (32 x k + 1) / (2 x (32 x k + 1 + 32 x c)) x 100.

    - Where, k => The constant overhead per node. eg. for list, it is - 8 bytes, and for map it is 12 bytes. c => The size of the + where k is the constant overhead per node (e.g., for list, it is + 8 bytes, and for map it is 12 bytes) and c is the size of the base type on which the map/list is instantiated. Thus, suppose the type1 is int and type2 is double, they are related by the relation sizeof(double) == 2*sizeof(int). Thus, all types must have this diff --git a/libstdc++-v3/doc/html/manual/bk01apas03.html b/libstdc++-v3/doc/html/manual/bk01apas03.html index 620968d2750..1f5e5f7b3c3 100644 --- a/libstdc++-v3/doc/html/manual/bk01apas03.html +++ b/libstdc++-v3/doc/html/manual/bk01apas03.html @@ -1,7 +1,7 @@ Coding Style

    Coding Style

    -

    Bad Itentifiers

    +

    Bad Identifiers

    Identifiers that conflict and should be avoided.


          This is the list of names “reserved to the
    @@ -330,7 +330,7 @@       for definitions. For C++, where we have member functions that can
          be either inline definitions or declarations, keeping to this
          standard allows all member function names for a given class to be
    -      aligned to the same margin, increasing readibility.
    +      aligned to the same margin, increasing readability.


          10. Invocation of member functions with "this->"
    @@ -356,7 +356,7 @@
          12. Spacing under protected and private in class declarations:
          space above, none below
    -      ie
    +      i.e.

          public:
          int foo;
    @@ -368,7 +368,7 @@
          13. Spacing WRT return statements.
          no extra spacing before returns, no parenthesis
    -      ie
    +      i.e.

          }
          return __ret;
    @@ -385,7 +385,7 @@

          14. Location of global variables.
    -      All global variables of class type, whether in the "user visable"
    +      All global variables of class type, whether in the "user visible"
          space (e.g., cin) or the implementation namespace, must be defined
          as a character array with the appropriate alignment and then later
          re-initialized to the correct value.
    diff --git a/libstdc++-v3/doc/html/manual/bk01apas04.html b/libstdc++-v3/doc/html/manual/bk01apas04.html index ceb73d88346..1ca6ed93900 100644 --- a/libstdc++-v3/doc/html/manual/bk01apas04.html +++ b/libstdc++-v3/doc/html/manual/bk01apas04.html @@ -83,7 +83,7 @@ (Examples of all these abound in the present code.)

    Docbook

    Prerequisites

    Editing the DocBook sources requires an XML editor. Many - exist: some noteable options + exist: some notable options include emacs, Kate, or Conglomerate.

    @@ -103,7 +103,7 @@ in doc/Makefile.am and defaults to /usr/share/sgml/docbook/xsl-stylesheets.

    - For procesessing XML, an XML processor and some style + For processing XML, an XML processor and some style sheets are necessary. Defaults are xsltproc provided by libxslt.

    @@ -153,10 +153,10 @@ xmllint --noout --valid xml/index.xml       faq.xml   - index to FAQ
          api.xml   - index to source level / API 

    -      All *.txml files are template xml files, ie otherwise empty files with
    +      All *.txml files are template xml files, i.e., otherwise empty files with
          the correct structure, suitable for filling in with new information.

    -      Cannonical Writing Style
    +      Canonical Writing Style

          class template
          function template
    diff --git a/libstdc++-v3/doc/html/manual/bk01apas05.html b/libstdc++-v3/doc/html/manual/bk01apas05.html index 27baae87413..79d6f217bc0 100644 --- a/libstdc++-v3/doc/html/manual/bk01apas05.html +++ b/libstdc++-v3/doc/html/manual/bk01apas05.html @@ -210,7 +210,7 @@     "export") is badly needed.

        When building a shared library, the current compiler/linker cannot
    -    automatically generate the instantiatiations needed. This creates a
    +    automatically generate the instantiations needed. This creates a
        miserable situation; it means any time something is changed in the
        library, before a shared library can be built someone must manually
        copy the declarations of all templates that are needed by other parts
    @@ -814,7 +814,7 @@     by filebuf. These wrappings have not been completed, though there
        is scaffolding in place.

    -    The encapulation of certain C header <cstdio> names presents an
    +    The encapsulation of certain C header <cstdio> names presents an
        interesting problem. It is possible to define an inline std::fprintf()
        implemented in terms of the 'extern "C"' vfprintf(), but there is no
        standard vfscanf() to use to implement std::fscanf(). It appears that
    diff --git a/libstdc++-v3/doc/html/manual/bk01pt01ch01.html b/libstdc++-v3/doc/html/manual/bk01pt01ch01.html index ab5c04569e7..cf60565fdd9 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt01ch01.html +++ b/libstdc++-v3/doc/html/manual/bk01pt01ch01.html @@ -6101,7 +6101,7 @@ In this implementation the header names are prefixed by

    This page describes the TR1 support in mainline GCC SVN, not in any particular release. -

    Table 1.1. C++ TR1 Implementation Status

    SectionDescriptionDoneBrokenMissingComments
    2General Utilities
    2.1Reference wrappersdone   
    2.1.1Additions to header <functional> synopsisdone   
    2.1.2Class template reference_wrapperdone   
    2.1.2.1reference_wrapper construct/copy/destroydone   
    2.1.2.2reference_wrapper assignmentdone   
    2.1.2.3reference_wrapper accessdone   
    2.1.2.4reference_wrapper invocationdone   
    2.1.2.5reference_wrapper helper functionsdone   
    2.2Smart pointersdone   
    2.2.1Additions to header <memory> synopsisdone   
    2.2.2Class bad_weak_ptrdone   
    2.2.3Class template shared_ptrdone  See Footnotes
    2.2.3.1shared_ptr constructorsdone   
    2.2.3.2shared_ptr destructordone   
    2.2.3.3shared_ptr assignmentdone   
    2.2.3.4shared_ptr modifiersdone   
    2.2.3.5shared_ptr observersdone   
    2.2.3.6shared_ptr comparisondone   
    2.2.3.7shared_ptr I/Odone   
    2.2.3.8shared_ptr specialized algorithmsdone   
    2.2.3.9shared_ptr castsdone   
    2.2.3.10get_deleterdone   
    2.2.4Class template weak_ptrdone   
    2.2.4.1weak_ptr constructorsdone   
    2.2.4.2weak_ptr destructordone   
    2.2.4.3weak_ptr assignmentdone   
    2.2.4.4weak_ptr modifiersdone   
    2.2.4.5weak_ptr observersdone   
    2.2.4.6weak_ptr comparisondone   
    2.2.4.7weak_ptr specialized algorithmsdone   
    2.2.5Class template enable_shared_from_thisdone   
    3Function Objects
    3.1Definitionsdone   
    3.2Additions to <functional> synopsisdone   
    3.3Requirementsdone   
    3.4Function return typesdone   
    3.5Function template mem_fndone   
    3.6Function object bindersdone   
    3.6.1Class template is_bind_expressiondone   
    3.6.2Class template is_placeholderdone   
    3.6.3Function template binddone   
    3.6.4Placeholdersdone   
    3.7Polymorphic function wrappersdone   
    3.7.1Class bad_function_calldone   
    3.7.1.1bad_function_call constructordone   
    3.7.2Class template functiondone   
    3.7.2.1function construct/copy/destroydone   
    3.7.2.2function modifiersdone   
    3.7.2.3function capacitydone   
    3.7.2.4function invocationdone   
    3.7.2.5function target accessdone   
    3.7.2.6undefined operatorsdone   
    3.7.2.7null pointer comparison operatorsdone   
    3.7.2.8specialized algorithmsdone   
    4Metaprogramming and type traits
    4.1Requirementsdone   
    4.2Header <type_traits> synopsisdone   
    4.3Helper classesdone   
    4.4General Requirementsdone   
    4.5Unary Type Traitsdone   
    4.5.1Primary Type Categoriesdone   
    4.5.2Composite type traitsdone   
    4.5.3Type propertiesdone   
    4.6Relationships between typesdone   
    4.7Transformations between typesdone   
    4.7.1Const-volatile modificationsdone   
    4.7.2Reference modificationsdone   
    4.7.3Array modificationsdone   
    4.7.4Pointer modificationsdone   
    4.8Other transformationsdone   
    4.9Implementation requirementsdone   
    5Numerical Facilities
    5.1Random number generationdone   
    5.1.1Requirementsdone   
    5.1.2Header <random> synopsisdone   
    5.1.3Class template variate_generatordone   
    5.1.4Random number engine class templatesdone   
    5.1.4.1Class template linear_congruentialdone   
    5.1.4.2Class template mersenne_twisterdone   
    5.1.4.3Class template subtract_with_carrydone   
    5.1.4.4Class template subtract_with_carry_01done   
    5.1.4.5Class template discard_blockdone   
    5.1.4.6Class template xor_combinedone  operator()() per N2079
    5.1.5Engines with predefined parametersdone   
    5.1.6Class random_devicedone   
    5.1.7Random distribution class templatesdone   
    5.1.7.1Class template uniform_intdone   
    5.1.7.2Class bernoulli_distributiondone   
    5.1.7.3Class template geometric_distributiondone   
    5.1.7.4Class template poisson_distributiondone   
    5.1.7.5Class template binomial_distributiondone   
    5.1.7.6Class template uniform_realdone   
    5.1.7.7Class template exponential_distributiondone   
    5.1.7.8Class template normal_distributiondone   
    5.1.7.9Class template gamma_distributiondone   
    5.2Mathematical special functionsdone   
    5.2.1Additions to header <cmath> synopsisdone   
    5.2.1.1associated Laguerre polynomialsdone   
    5.2.1.2associated Legendre functionsdone   
    5.2.1.3beta functiondone   
    5.2.1.4(complete) elliptic integral of the first kinddone   
    5.2.1.5(complete) elliptic integral of the second kinddone   
    5.2.1.6(complete) elliptic integral of the third kinddone   
    5.2.1.7confluent hypergeometric functionsdone   
    5.2.1.8regular modified cylindrical Bessel functionsdone   
    5.2.1.9cylindrical Bessel functions (of the first kind)done   
    5.2.1.10irregular modified cylindrical Bessel functionsdone   
    5.2.1.11cylindrical Neumann functionsdone   
    5.2.1.12(incomplete) elliptic integral of the first kinddone   
    5.2.1.13(incomplete) elliptic integral of the second kinddone   
    5.2.1.14(incomplete) elliptic integral of the third kinddone   
    5.2.1.15exponential integraldone   
    5.2.1.16Hermite polynomialsdone   
    5.2.1.17hypergeometric functionsdone   
    5.2.1.18Laguerre polynomialsdone   
    5.2.1.19Legendre polynomialsdone   
    5.2.1.20Riemann zeta functiondone   
    5.2.1.21spherical Bessel functions (of the first kind)done   
    5.2.1.22spherical associated Legendre functionsdone   
    5.2.1.23spherical Neumann functionsdone   
    5.2.2Additions to header <math.h> synopsisdone   
    6Containers
    6.1Tuple typesdone   
    6.1.1Header <tuple> synopsisdone   
    6.1.2Additions to header <utility> synopsisdone   
    6.1.3Class template tupledone   
    6.1.3.1Constructiondone   
    6.1.3.2Tuple creation functionsdone   
    6.1.3.3Tuple helper classesdone   
    6.1.3.4Element accessdone   
    6.1.3.5Relational operatorsdone   
    6.1.4Pairsdone   
    6.2Fixed size arraydone   
    6.2.1Header <array> synopsisdone   
    6.2.2Class template arraydone   
    6.2.2.1array constructors, copy, and assignmentdone   
    6.2.2.2array specialized algorithmsdone   
    6.2.2.3array sizedone   
    6.2.2.4Zero sized arraysdone   
    6.2.2.5Tuple interface to class template arraydone   
    6.3Unordered associative containersdone   
    6.3.1Unordered associative container requirementsdone   
    6.3.1.1Exception safety guaranteesdone   
    6.3.2Additions to header <functional> synopsisdone   
    6.3.3Class template hashdone   
    6.3.4Unordered associative container classesdone   
    6.3.4.1Header <unordered_set> synopsisdone   
    6.3.4.2Header <unordered_map> synopsisdone   
    6.3.4.3Class template unordered_setdone   
    6.3.4.3.1unordered_set constructorsdone   
    6.3.4.3.2unordered_set swapdone   
    6.3.4.4Class template unordered_mapdone   
    6.3.4.4.1unordered_map constructorsdone   
    6.3.4.4.2unordered_map element accessdone   
    6.3.4.4.3unordered_map swapdone   
    6.3.4.5Class template unordered_multisetdone   
    6.3.4.5.1unordered_multiset constructorsdone   
    6.3.4.5.2unordered_multiset swapdone   
    6.3.4.6Class template unordered_multimapdone   
    6.3.4.6.1unordered_multimap constructorsdone   
    6.3.4.6.2unordered_multimap swapdone   
    7Regular Expressions
    7.1Definitions  missing 
    7.2Requirements  missing 
    7.3Regular expressions summary  missing 
    7.4Header <regex> synopsis  missing 
    7.5Namespace tr1::regex_constants  missing 
    7.5.1Bitmask Type syntax_option_type  missing 
    7.5.2Bitmask Type regex_constants::match_flag_type  missing 
    7.5.3Implementation defined error_type  missing 
    7.6Class regex_error  missing 
    7.7Class template regex_traits  missing 
    7.8Class template basic_regex  missing 
    7.8.1basic_regex constants  missing 
    7.8.2basic_regex constructors  missing 
    7.8.3basic_regex assign  missing 
    7.8.4basic_regex constant operations  missing 
    7.8.5basic_regex locale  missing 
    7.8.6basic_regex swap  missing 
    7.8.7basic_regex non-member functions  missing 
    7.8.7.1basic_regex non-member swap  missing 
    7.9Class template sub_match  missing 
    7.9.1sub_match members  missing 
    7.9.2sub_match non-member operators  missing 
    7.10Class template match_results  missing 
    7.10.1match_results constructors  missing 
    7.10.2match_results size  missing 
    7.10.3match_results element access  missing 
    7.10.4match_results formatting  missing 
    7.10.5match_results allocator  missing 
    7.10.6match_results swap  missing 
    7.11Regular expression algorithms  missing 
    7.11.1exceptions  missing 
    7.11.2regex_match  missing 
    7.11.3regex_search  missing 
    7.11.4regex_replace  missing 
    7.12Regular expression Iterators  missing 
    7.12.1Class template regex_iterator  missing 
    7.12.1.1regex_iterator constructors  missing 
    7.12.1.2regex_iterator comparisons  missing 
    7.12.1.3regex_iterator dereference  missing 
    7.12.1.4regex_iterator increment  missing 
    7.12.2Class template regex_token_iterator  missing 
    7.12.2.1regex_token_iterator constructors  missing 
    7.12.2.2regex_token_iterator comparisons  missing 
    7.12.2.3regex_token_iterator dereference  missing 
    7.12.2.4regex_token_iterator increment  missing 
    7.13Modified ECMAScript regular expression grammar  missing 
    8C Compatibility
    8.1Additions to header <complex>done   
    8.1.1Synopsisdone   
    8.1.2Function acosdone   
    8.1.3Function asindone   
    8.1.4Function atandone   
    8.1.5Function acoshdone   
    8.1.6Function asinhdone   
    8.1.7Function atanhdone   
    8.1.8Function fabsdone   
    8.1.9Additional Overloadsdone   
    8.2Header <ccomplex>  missingDR 551
    8.3Header <complex.h>  missingDR 551
    8.4Additions to header <cctype>done   
    8.4.1Synopsisdone   
    8.4.2Function isblankdone   
    8.5Additions to header <ctype.h>done   
    8.6Header <cfenv>done   
    8.6.1Synopsisdone   
    8.6.2Definitionsdone   
    8.7Header <fenv.h>done   
    8.8Additions to header <cfloat>done   
    8.9Additions to header <float.h>done   
    8.10Additions to header <ios>  missing 
    8.10.1Synopsis  missing 
    8.10.2Function hexfloat  missing 
    8.11Header <cinttypes>done   
    8.11.1Synopsisdone  DR 557
    8.11.2Definitionsdone   
    8.12Header <inttypes.h>done   
    8.13Additions to header <climits>done   
    8.14Additions to header <limits.h>done   
    8.15Additions to header <locale>  missing 
    8.16Additions to header <cmath>done   
    8.16.1Synopsisdone   
    8.16.2Definitionsdone   
    8.16.3Function template definitionsdone   
    8.16.4Additional overloadsdone  DR 568; DR 550
    8.17Additions to header <math.h>done   
    8.18Additions to header <cstdarg>done   
    8.19Additions to header <stdarg.h>done   
    8.20The header <cstdbool>done   
    8.21The header <stdbool.h>done   
    8.22The header <cstdint>done   
    8.22.1Synopsisdone   
    8.22.2Definitionsdone   
    8.23The header <stdint.h>done   
    8.24Additions to header <cstdio>done   
    8.24.1Synopsisdone   
    8.24.2Definitionsdone   
    8.24.3Additional format specifiersdone  C library responsibility
    8.24.4Additions to header <stdio.h>done   
    8.25Additions to header <cstdlib>done   
    8.25.1Synopsisdone   
    8.25.2Definitionsdone   
    8.25.3Function absdone   
    8.25.4Function divdone   
    8.26Additions to header <stdlib.h>done   
    8.27Header <ctgmath>done  DR 551
    8.28Header <tgmath.h>done  DR 551
    8.29Additions to header <ctime>done  C library responsibility
    8.30Additions to header <cwchar>done   
    8.30.1Synopsisdone   
    8.30.2Definitionsdone   
    8.30.3Additional wide format specifiersdone  C library responsibility
    8.31Additions to header <wchar.h>done   
    8.32Additions to header <cwctype>done   
    8.32.1Synopsisdone   
    8.32.2Function iswblankdone   
    8.33Additions to header <wctype.h>done   

    +

    Table 1.1. C++ TR1 Implementation Status

    SectionDescriptionDoneBrokenMissingComments
    2General Utilities
    2.1Reference wrappersdone   
    2.1.1Additions to header <functional> synopsisdone   
    2.1.2Class template reference_wrapperdone   
    2.1.2.1reference_wrapper construct/copy/destroydone   
    2.1.2.2reference_wrapper assignmentdone   
    2.1.2.3reference_wrapper accessdone   
    2.1.2.4reference_wrapper invocationdone   
    2.1.2.5reference_wrapper helper functionsdone   
    2.2Smart pointersdone   
    2.2.1Additions to header <memory> synopsisdone   
    2.2.2Class bad_weak_ptrdone   
    2.2.3Class template shared_ptrdone  See Footnotes
    2.2.3.1shared_ptr constructorsdone   
    2.2.3.2shared_ptr destructordone   
    2.2.3.3shared_ptr assignmentdone   
    2.2.3.4shared_ptr modifiersdone   
    2.2.3.5shared_ptr observersdone   
    2.2.3.6shared_ptr comparisondone   
    2.2.3.7shared_ptr I/Odone   
    2.2.3.8shared_ptr specialized algorithmsdone   
    2.2.3.9shared_ptr castsdone   
    2.2.3.10get_deleterdone   
    2.2.4Class template weak_ptrdone   
    2.2.4.1weak_ptr constructorsdone   
    2.2.4.2weak_ptr destructordone   
    2.2.4.3weak_ptr assignmentdone   
    2.2.4.4weak_ptr modifiersdone   
    2.2.4.5weak_ptr observersdone   
    2.2.4.6weak_ptr comparisondone   
    2.2.4.7weak_ptr specialized algorithmsdone   
    2.2.5Class template enable_shared_from_thisdone   
    3Function Objects
    3.1Definitionsdone   
    3.2Additions to <functional> synopsisdone   
    3.3Requirementsdone   
    3.4Function return typesdone   
    3.5Function template mem_fndone   
    3.6Function object bindersdone   
    3.6.1Class template is_bind_expressiondone   
    3.6.2Class template is_placeholderdone   
    3.6.3Function template binddone   
    3.6.4Placeholdersdone   
    3.7Polymorphic function wrappersdone   
    3.7.1Class bad_function_calldone   
    3.7.1.1bad_function_call constructordone   
    3.7.2Class template functiondone   
    3.7.2.1function construct/copy/destroydone   
    3.7.2.2function modifiersdone   
    3.7.2.3function capacitydone   
    3.7.2.4function invocationdone   
    3.7.2.5function target accessdone   
    3.7.2.6undefined operatorsdone   
    3.7.2.7null pointer comparison operatorsdone   
    3.7.2.8specialized algorithmsdone   
    4Metaprogramming and type traits
    4.1Requirementsdone   
    4.2Header <type_traits> synopsisdone   
    4.3Helper classesdone   
    4.4General Requirementsdone   
    4.5Unary Type Traitsdone   
    4.5.1Primary Type Categoriesdone   
    4.5.2Composite type traitsdone   
    4.5.3Type propertiesdone   
    4.6Relationships between typesdone   
    4.7Transformations between typesdone   
    4.7.1Const-volatile modificationsdone   
    4.7.2Reference modificationsdone   
    4.7.3Array modificationsdone   
    4.7.4Pointer modificationsdone   
    4.8Other transformationsdone   
    4.9Implementation requirementsdone   
    5Numerical Facilities
    5.1Random number generationdone   
    5.1.1Requirementsdone   
    5.1.2Header <random> synopsisdone   
    5.1.3Class template variate_generatordone   
    5.1.4Random number engine class templatesdone   
    5.1.4.1Class template linear_congruentialdone   
    5.1.4.2Class template mersenne_twisterdone   
    5.1.4.3Class template subtract_with_carrydone   
    5.1.4.4Class template subtract_with_carry_01done   
    5.1.4.5Class template discard_blockdone   
    5.1.4.6Class template xor_combinedone  operator()() per N2079
    5.1.5Engines with predefined parametersdone   
    5.1.6Class random_devicedone   
    5.1.7Random distribution class templatesdone   
    5.1.7.1Class template uniform_intdone   
    5.1.7.2Class bernoulli_distributiondone   
    5.1.7.3Class template geometric_distributiondone   
    5.1.7.4Class template poisson_distributiondone   
    5.1.7.5Class template binomial_distributiondone   
    5.1.7.6Class template uniform_realdone   
    5.1.7.7Class template exponential_distributiondone   
    5.1.7.8Class template normal_distributiondone   
    5.1.7.9Class template gamma_distributiondone   
    5.2Mathematical special functionsdone   
    5.2.1Additions to header <cmath> synopsisdone   
    5.2.1.1associated Laguerre polynomialsdone   
    5.2.1.2associated Legendre functionsdone   
    5.2.1.3beta functiondone   
    5.2.1.4(complete) elliptic integral of the first kinddone   
    5.2.1.5(complete) elliptic integral of the second kinddone   
    5.2.1.6(complete) elliptic integral of the third kinddone   
    5.2.1.7confluent hypergeometric functionsdone   
    5.2.1.8regular modified cylindrical Bessel functionsdone   
    5.2.1.9cylindrical Bessel functions (of the first kind)done   
    5.2.1.10irregular modified cylindrical Bessel functionsdone   
    5.2.1.11cylindrical Neumann functionsdone   
    5.2.1.12(incomplete) elliptic integral of the first kinddone   
    5.2.1.13(incomplete) elliptic integral of the second kinddone   
    5.2.1.14(incomplete) elliptic integral of the third kinddone   
    5.2.1.15exponential integraldone   
    5.2.1.16Hermite polynomialsdone   
    5.2.1.17hypergeometric functionsdone   
    5.2.1.18Laguerre polynomialsdone   
    5.2.1.19Legendre polynomialsdone   
    5.2.1.20Riemann zeta functiondone   
    5.2.1.21spherical Bessel functions (of the first kind)done   
    5.2.1.22spherical associated Legendre functionsdone   
    5.2.1.23spherical Neumann functionsdone   
    5.2.2Additions to header <math.h> synopsisdone   
    6Containers
    6.1Tuple typesdone   
    6.1.1Header <tuple> synopsisdone   
    6.1.2Additions to header <utility> synopsisdone   
    6.1.3Class template tupledone   
    6.1.3.1Constructiondone   
    6.1.3.2Tuple creation functionsdone   
    6.1.3.3Tuple helper classesdone   
    6.1.3.4Element accessdone   
    6.1.3.5Relational operatorsdone   
    6.1.4Pairsdone   
    6.2Fixed size arraydone   
    6.2.1Header <array> synopsisdone   
    6.2.2Class template arraydone   
    6.2.2.1array constructors, copy, and assignmentdone   
    6.2.2.2array specialized algorithmsdone   
    6.2.2.3array sizedone   
    6.2.2.4Zero sized arraysdone   
    6.2.2.5Tuple interface to class template arraydone   
    6.3Unordered associative containersdone   
    6.3.1Unordered associative container requirementsdone   
    6.3.1.1Exception safety guaranteesdone   
    6.3.2Additions to header <functional> synopsisdone   
    6.3.3Class template hashdone   
    6.3.4Unordered associative container classesdone   
    6.3.4.1Header <unordered_set> synopsisdone   
    6.3.4.2Header <unordered_map> synopsisdone   
    6.3.4.3Class template unordered_setdone   
    6.3.4.3.1unordered_set constructorsdone   
    6.3.4.3.2unordered_set swapdone   
    6.3.4.4Class template unordered_mapdone   
    6.3.4.4.1unordered_map constructorsdone   
    6.3.4.4.2unordered_map element accessdone   
    6.3.4.4.3unordered_map swapdone   
    6.3.4.5Class template unordered_multisetdone   
    6.3.4.5.1unordered_multiset constructorsdone   
    6.3.4.5.2unordered_multiset swapdone   
    6.3.4.6Class template unordered_multimapdone   
    6.3.4.6.1unordered_multimap constructorsdone   
    6.3.4.6.2unordered_multimap swapdone   
    7Regular Expressions
    7.1Definitions  missing 
    7.2Requirements  missing 
    7.3Regular expressions summary  missing 
    7.4Header <regex> synopsis  missing 
    7.5Namespace tr1::regex_constants  missing 
    7.5.1Bitmask Type syntax_option_type  missing 
    7.5.2Bitmask Type regex_constants::match_flag_type  missing 
    7.5.3Implementation defined error_type  missing 
    7.6Class regex_error  missing 
    7.7Class template regex_traits  missing 
    7.8Class template basic_regex  missing 
    7.8.1basic_regex constants  missing 
    7.8.2basic_regex constructors  missing 
    7.8.3basic_regex assign  missing 
    7.8.4basic_regex constant operations  missing 
    7.8.5basic_regex locale  missing 
    7.8.6basic_regex swap  missing 
    7.8.7basic_regex non-member functions  missing 
    7.8.7.1basic_regex non-member swap  missing 
    7.9Class template sub_match  missing 
    7.9.1sub_match members  missing 
    7.9.2sub_match non-member operators  missing 
    7.10Class template match_results  missing 
    7.10.1match_results constructors  missing 
    7.10.2match_results size  missing 
    7.10.3match_results element access  missing 
    7.10.4match_results formatting  missing 
    7.10.5match_results allocator  missing 
    7.10.6match_results swap  missing 
    7.11Regular expression algorithms  missing 
    7.11.1exceptions  missing 
    7.11.2regex_match  missing 
    7.11.3regex_search  missing 
    7.11.4regex_replace  missing 
    7.12Regular expression Iterators  missing 
    7.12.1Class template regex_iterator  missing 
    7.12.1.1regex_iterator constructors  missing 
    7.12.1.2regex_iterator comparisons  missing 
    7.12.1.3regex_iterator dereference  missing 
    7.12.1.4regex_iterator increment  missing 
    7.12.2Class template regex_token_iterator  missing 
    7.12.2.1regex_token_iterator constructors  missing 
    7.12.2.2regex_token_iterator comparisons  missing 
    7.12.2.3regex_token_iterator dereference  missing 
    7.12.2.4regex_token_iterator increment  missing 
    7.13Modified ECMAScript regular expression grammar  missing 
    8C Compatibility
    8.1Additions to header <complex>done   
    8.1.1Synopsisdone   
    8.1.2Function acosdone   
    8.1.3Function asindone   
    8.1.4Function atandone   
    8.1.5Function acoshdone   
    8.1.6Function asinhdone   
    8.1.7Function atanhdone   
    8.1.8Function fabsdone   
    8.1.9Additional Overloadsdone   
    8.2Header <ccomplex>  missingDR 551
    8.3Header <complex.h>  missingDR 551
    8.4Additions to header <cctype>done   
    8.4.1Synopsisdone   
    8.4.2Function isblankdone   
    8.5Additions to header <ctype.h>done   
    8.6Header <cfenv>done   
    8.6.1Synopsisdone   
    8.6.2Definitionsdone   
    8.7Header <fenv.h>done   
    8.8Additions to header <cfloat>done   
    8.9Additions to header <float.h>done   
    8.10Additions to header <ios>  missing 
    8.10.1Synopsis  missing 
    8.10.2Function hexfloat  missing 
    8.11Header <cinttypes>done   
    8.11.1Synopsisdone  DR 557
    8.11.2Definitionsdone   
    8.12Header <inttypes.h>done   
    8.13Additions to header <climits>done   
    8.14Additions to header <limits.h>done   
    8.15Additions to header <locale>  missing 
    8.16Additions to header <cmath>done   
    8.16.1Synopsisdone   
    8.16.2Definitionsdone   
    8.16.3Function template definitionsdone   
    8.16.4Additional overloadsdone  DR 568; DR 550
    8.17Additions to header <math.h>done   
    8.18Additions to header <cstdarg>done   
    8.19Additions to header <stdarg.h>done   
    8.20The header <cstdbool>done   
    8.21The header <stdbool.h>done   
    8.22The header <cstdint>done   
    8.22.1Synopsisdone   
    8.22.2Definitionsdone   
    8.23The header <stdint.h>done   
    8.24Additions to header <cstdio>done   
    8.24.1Synopsisdone   
    8.24.2Definitionsdone   
    8.24.3Additional format specifiersdone  C library responsibility
    8.24.4Additions to header <stdio.h>done   
    8.25Additions to header <cstdlib>done   
    8.25.1Synopsisdone   
    8.25.2Definitionsdone   
    8.25.3Function absdone   
    8.25.4Function divdone   
    8.26Additions to header <stdlib.h>done   
    8.27Header <ctgmath>done  DR 551
    8.28Header <tgmath.h>done  DR 551
    8.29Additions to header <ctime>done  C library responsibility
    8.30Additions to header <cwchar>done   
    8.30.1Synopsisdone   
    8.30.2Definitionsdone   
    8.30.3Additional wide format specifiersdone  C library responsibility
    8.31Additions to header <wchar.h>done   
    8.32Additions to header <cwctype>done   
    8.32.1Synopsisdone   
    8.32.2Function iswblankdone   
    8.33Additions to header <wctype.h>done   

    Footnotes

    The shared_ptr implementation uses some code from the @@ -6120,9 +6120,9 @@ presence of the required flag.

    This page describes the C++0x support in mainline GCC SVN, not in any particular release. -

    Table 1.2. C++ 200x Implementation Status

    SectionDescriptionDoneBrokenMissingComments
    20General Utilities
    20.2Utility Components  incomplete 
    20.2.1Operators  partial 
    20.2.2forward/move helpers  partial 
    20.2.3Pairsdone   
    20.3Header <tuple> synopsisdone   
    20.3.1Class template tupledone   
    20.3.1.1Constructiondone   
    20.3.1.2Tuple creation functionsdone   
    20.3.1.3Tuple helper classesdone   
    20.3.1.4Element accessdone   
    20.3.1.5Relational operatorsdone   
    20.4Metaprogramming and type traits
    20.4.1Requirementsdone   
    20.4.2Header <type_traits> synopsisdone   
    20.4.3Helper classesdone   
    20.4.4General Requirementsdone   
    20.4.5Unary Type Traitsdone   
    20.4.5.1Primary Type Categoriesdone   
    20.4.5.2Composite type traitsdone   
    20.4.5.3Type propertiesdone   
    20.4.6Relationships between typesdone   
    20.4.7Transformations between typesdone   
    20.4.7.1Const-volatile modificationsdone   
    20.4.7.2Reference modificationsdone   
    20.4.7.3Array modificationsdone   
    20.4.7.4Pointer modificationsdone   
    20.4.8Other transformationsdone   
    20.4.9Implementation requirementsdone   
    20.5 Function Objectsdone   
    20.5Additions to header <functional> synopsisdone   
    20.5.1Definitionsdone   
    20.5.2Requirementsdone   
    20.5.3Basedone   
    20.5.4Function return typesdone   
    20.5.5Class template reference_wrapperdone   
    20.5.5.1reference_wrapper construct/copy/destroydone   
    20.5.5.2reference_wrapper assignmentdone   
    20.5.5.3reference_wrapper accessdone   
    20.5.5.4reference_wrapper invocationdone   
    20.5.5.5reference_wrapper helper functionsdone   
    20.5.14Function template mem_fndone   
    20.5.11Template function binddone   
    20.5.11.1Function object bindersdone   
    20.5.11.1.1Class template is_bind_expressiondone   
    20.5.11.1.2Class template is_placeholderdone   
    20.5.11.1.3Function template binddone   
    20.5.11.1.4Placeholdersdone   
    20.5.15Polymorphic function wrappersdone   
    20.5.15.1Class bad_function_calldone   
    20.5.15.1.1bad_function_call constructordone   
    20.5.15.2Class template functiondone   
    20.5.15.2.1function construct/copy/destroydone   
    20.5.15.2.2function modifiersdone   
    20.5.15.2.3function capacitydone   
    20.5.15.2.4function invocationdone   
    20.5.15.2.5function target accessdone   
    20.5.15.2.7null pointer comparison operatorsdone   
    20.5.15.2.8specialized algorithmsdone   
    20.5.16Class template hashdone   
    20.6Additions to header <memory> synopsis  partialmissing unique_ptr
    20.6.5Class template unique_ptr  missing 
    20.6.6Smart pointersdone   
    20.6.6.1Class bad_weak_ptrdone   
    20.6.6.2Class template shared_ptrdone  See Footnotes.
    20.6.6.2.1shared_ptr constructorsdone   
    20.6.6.2.2shared_ptr destructordone   
    20.6.6.2.3shared_ptr assignmentdone   
    20.6.6.2.4shared_ptr modifiersdone   
    20.6.6.2.5shared_ptr observersdone   
    20.6.6.2.6shared_ptr creationdone   +

    Table 1.2. C++ 200x Implementation Status

    SectionDescriptionDoneBrokenMissingComments
    20General Utilities
    20.2Utility Components  incomplete 
    20.2.1Operators  partial 
    20.2.2forward/move helpers  partial 
    20.2.3Pairsdone   
    20.3Header <tuple> synopsisdone   
    20.3.1Class template tupledone   
    20.3.1.1Constructiondone   
    20.3.1.2Tuple creation functionsdone   
    20.3.1.3Tuple helper classesdone   
    20.3.1.4Element accessdone   
    20.3.1.5Relational operatorsdone   
    20.4Metaprogramming and type traits
    20.4.1Requirementsdone   
    20.4.2Header <type_traits> synopsisdone   
    20.4.3Helper classesdone   
    20.4.4General Requirementsdone   
    20.4.5Unary Type Traitsdone   
    20.4.5.1Primary Type Categoriesdone   
    20.4.5.2Composite type traitsdone   
    20.4.5.3Type propertiesdone   
    20.4.6Relationships between typesdone   
    20.4.7Transformations between typesdone   
    20.4.7.1Const-volatile modificationsdone   
    20.4.7.2Reference modificationsdone   
    20.4.7.3Array modificationsdone   
    20.4.7.4Pointer modificationsdone   
    20.4.8Other transformationsdone   
    20.4.9Implementation requirementsdone   
    20.5 Function Objectsdone   
    20.5Additions to header <functional> synopsisdone   
    20.5.1Definitionsdone   
    20.5.2Requirementsdone   
    20.5.3Basedone   
    20.5.4Function return typesdone   
    20.5.5Class template reference_wrapperdone   
    20.5.5.1reference_wrapper construct/copy/destroydone   
    20.5.5.2reference_wrapper assignmentdone   
    20.5.5.3reference_wrapper accessdone   
    20.5.5.4reference_wrapper invocationdone   
    20.5.5.5reference_wrapper helper functionsdone   
    20.5.14Function template mem_fndone   
    20.5.11Template function binddone   
    20.5.11.1Function object bindersdone   
    20.5.11.1.1Class template is_bind_expressiondone   
    20.5.11.1.2Class template is_placeholderdone   
    20.5.11.1.3Function template binddone   
    20.5.11.1.4Placeholdersdone   
    20.5.15Polymorphic function wrappersdone   
    20.5.15.1Class bad_function_calldone   
    20.5.15.1.1bad_function_call constructordone   
    20.5.15.2Class template functiondone   
    20.5.15.2.1function construct/copy/destroydone   
    20.5.15.2.2function modifiersdone   
    20.5.15.2.3function capacitydone   
    20.5.15.2.4function invocationdone   
    20.5.15.2.5function target accessdone   
    20.5.15.2.7null pointer comparison operatorsdone   
    20.5.15.2.8specialized algorithmsdone   
    20.5.16Class template hashdone   
    20.6Additions to header <memory> synopsis  partialmissing unique_ptr
    20.6.5Class template unique_ptr  missing 
    20.6.6Smart pointersdone   
    20.6.6.1Class bad_weak_ptrdone   
    20.6.6.2Class template shared_ptrdone  See Footnotes.
    20.6.6.2.1shared_ptr constructorsdone   
    20.6.6.2.2shared_ptr destructordone   
    20.6.6.2.3shared_ptr assignmentdone   
    20.6.6.2.4shared_ptr modifiersdone   
    20.6.6.2.5shared_ptr observersdone   
    20.6.6.2.6shared_ptr creationdone   N2351 -
    20.6.6.2.7shared_ptr comparisondone   
    20.6.6.2.8shared_ptr I/Odone   
    20.6.6.2.9shared_ptr specialized algorithmsdone   
    20.6.6.2.10shared_ptr castsdone   
    20.6.6.2.11get_deleterdone   
    20.6.6.3Class template weak_ptrdone   
    20.6.6.3.1weak_ptr constructorsdone   
    20.6.6.3.2weak_ptr destructordone   
    20.6.6.3.3weak_ptr assignmentdone   
    20.6.6.3.4weak_ptr modifiersdone   
    20.6.6.3.5weak_ptr observersdone   
    20.6.6.3.6weak_ptr comparisondone   
    20.6.6.3.7weak_ptr specialized algorithmsdone   
    20.6.6.4Class template enable_shared_from_thisdone   
    23Containers
    23.2.1Header <array> synopsisdone   
    23.2.1Class template arraydone   
    23.2.1.1array constructors, copy, and assignmentdone   
    23.2.1.2array specialized algorithmsdone   
    23.2.1.3array sizedone   
    23.2.1.4array datadone   
    23.2.1.5Zero sized arraysdone   
    23.2.1.6Tuple interface to class template arraydone   
    23.4Unordered associative containersdone   
    23.4.1Class template unordered_mapdone   
    23.4.1.1unordered_map constructorsdone   
    23.4.1.2unordered_map element accessdone   
    23.4.1.3unordered_map swapdone   
    23.4.2Class template unordered_multimapdone   
    23.4.2.1unordered_multimap constructorsdone   
    23.4.2.2unordered_multimap swapdone   
    23.4.3Class template unordered_setdone   
    23.4.3.1unordered_set constructorsdone   
    23.4.3.2unordered_set swapdone   
    23.4.4Class template unordered_multisetdone   
    23.4.4.1unordered_multiset constructorsdone   
    23.4.4.2unordered_multiset swapdone   
    26Numerics
    26.4Random number generationdone   
    26.4.1Requirementsdone   
    26.4.2Header <random> synopsis  partial 
    26.4.3Random number engine class templatesdone   
    26.4.3.1Class template linear_congruential_enginedone   
    26.4.3.2Class template mersenne_twister_enginedone   
    26.4.3.3Class template subtract_with_carry_enginedone   
    26.4.4Random number engine adaptor class templatesdone   
    26.4.4.1Class template discard_block_enginedone   
    26.4.4.2Class template independent_bits_enginedone   
    26.4.4.3Class template shuffle_order_enginedone   
    26.4.4.4Class template xor_combine_enginedone  operator()() per N2079
    26.4.5Engines and engine adaptors with predefined parametersdone   
    26.4.6Class random_devicedone   
    26.4.7Utilitiesdone   
    26.4.7.1Class seed_seq  missing 
    26.4.7.2Function template generate_cannonical  missing 
    26.4.8Random number generation class templatesdone   
    26.4.8.1Uniform distributions  partial 
    26.4.8.1Class template uniform_int_distribution  missing 
    26.4.8.1Class template uniform_real_distribution  missing 
    26.4.8.2Bernoulli distributions  partial 
    26.4.8.2.1Class bernoulli_distributiondone   
    26.4.8.2.2Class template binomial_distributiondone   
    26.4.8.2.3Class template geometric_distributiondone   
    26.4.8.2.4Class template negative_binomial_distribution  missing 
    26.4.8.3Poisson distributions  partial 
    26.4.8.3.1Class template poisson_distributiondone   
    26.4.8.3.2Class template exponential_distributiondone   
    26.4.8.3.3Class template gamma_distributiondone   
    26.4.8.3.4Class template weibull_distribution  missing 
    26.4.8.3.5Class template extreme_value_distribution  missing 
    26.4.8.4Normal distributions  partial 
    26.4.8.4.1Class template normal_distributiondone   
    26.4.8.4.2Class template lognormal_distribution  missing 
    26.4.8.4.3Class template chi_squared_distribution  missing 
    26.4.8.4.4Class template cauchy_distribution  missing 
    26.4.8.4.5Class template fisher_f_distribution  missing 
    26.4.8.4.6Class template student_t_distribution  missing 
    26.4.8.5Sampling distributions  missing 
    26.4.8.5.1Class template discrete_distribution  missing 
    26.4.8.5.1Class template piecewise_constant_distribution  missing 
    26.4.8.5.1Class template general_pdf_distribution  missing 
    28Regular Expressions
    28.1Definitions  missing 
    28.2Requirements  missing 
    28.3Regular expressions summary  missing 
    28.4Header <regex> synopsis  missing 
    28.5Namespace tr1::regex_constants  missing 
    28.5.1Bitmask Type syntax_option_type  missing 
    28.5.2Bitmask Type regex_constants::match_flag_type  missing 
    28.5.3Implementation defined error_type  missing 
    28.6Class regex_error  missing 
    28.7Class template regex_traits  missing 
    28.8Class template basic_regex  missing 
    28.8.1basic_regex constants  missing 
    28.8.2basic_regex constructors  missing 
    28.8.3basic_regex assign  missing 
    28.8.4basic_regex constant operations  missing 
    28.8.5basic_regex locale  missing 
    28.8.6basic_regex swap  missing 
    28.8.7basic_regex non-member functions  missing 
    28.8.7.1basic_regex non-member swap  missing 
    28.9Class template sub_match  missing 
    28.9.1sub_match members  missing 
    28.9.2sub_match non-member operators  missing 
    28.10Class template match_results  missing 
    28.10.1match_results constructors  missing 
    28.10.2match_results size  missing 
    28.10.3match_results element access  missing 
    28.10.4match_results formatting  missing 
    28.10.5match_results allocator  missing 
    28.10.6match_results swap  missing 
    28.11Regular expression algorithms  missing 
    28.11.1exceptions  missing 
    28.11.2regex_match  missing 
    28.11.3regex_search  missing 
    28.11.4regex_replace  missing 
    28.12Regular expression Iterators  missing 
    28.12.1Class template regex_iterator  missing 
    28.12.1.1regex_iterator constructors  missing 
    28.12.1.2regex_iterator comparisons  missing 
    28.12.1.3regex_iterator dereference  missing 
    28.12.1.4regex_iterator increment  missing 
    28.12.2Class template regex_token_iterator  missing 
    28.12.2.1regex_token_iterator constructors  missing 
    28.12.2.2regex_token_iterator comparisons  missing 
    28.12.2.3regex_token_iterator dereference  missing 
    28.12.2.4regex_token_iterator increment  missing 
    28.13Modified ECMAScript regular expression grammar  missing 
    CC Compatibility
    C2.1Additions to header <complex>done   
    C2.1.1Synopsisdone   
    C2.1.2Function acosdone   
    C2.1.3Function asindone   
    C2.1.4Function atandone   
    C2.1.5Function acoshdone   
    C2.1.6Function asinhdone   
    C2.1.7Function atanhdone   
    C2.1.8Function fabsdone   
    C2.1.9Additional Overloadsdone   
    C2.2Header <ccomplex>  missingDR 551
    C2.3Header <complex.h>  missingDR 551
    C2.4Additions to header <cctype>done   
    C2.4.1Synopsisdone   
    C2.4.2Function isblankdone   
    C2.5Additions to header <ctype.h>done   
    C2.6Header <cfenv>done   
    C2.6.1Synopsisdone   
    C2.6.2Definitionsdone   
    C2.7Header <fenv.h>done   
    C2.8Additions to header <cfloat>done   
    C2.9Additions to header <float.h>done   
    C2.10Additions to header <ios>  missing 
    C2.10.1Synopsis  missing 
    C2.10.2Function hexfloat  missing 
    C2.11Header <cinttypes>done   
    C2.11.1Synopsisdone  DR 557
    C2.11.2Definitionsdone   
    C2.12Header <inttypes.h>done   
    C2.13Additions to header <climits>done   
    C2.14Additions to header <limits.h>done   
    C2.15Additions to header <locale>  missing 
    C2.16Additions to header <cmath>done   
    C2.16.1Synopsisdone   
    C2.16.2Definitionsdone   
    C2.16.3Function template definitionsdone   
    C2.16.4Additional overloadsdone  DR 568; DR 550
    C2.17Additions to header <math.h>done   
    C2.18Additions to header <cstdarg>done   
    C2.19Additions to header <stdarg.h>done   
    C2.20The header <cstdbool>done   
    C2.21The header <stdbool.h>done   
    C2.22The header <cstdint>done   
    C2.22.1Synopsisdone   
    C2.22.2Definitionsdone   
    C2.23The header <stdint.h>done   
    C2.24Additions to header <cstdio>done   
    C2.24.1Synopsisdone   
    C2.24.2Definitionsdone   
    C2.24.3Additional format specifiersdone  C library responsibility
    C2.24.4Additions to header <stdio.h>done   
    C2.25Additions to header <cstdlib>done   
    C2.25.1Synopsisdone   
    C2.25.2Definitionsdone   
    C2.25.3Function absdone   
    C2.25.4Function divdone   
    C2.26Additions to header <stdlib.h>done   
    C2.27Header <ctgmath>done  DR 551
    C2.28Header <tgmath.h>done  DR 551
    C2.29Additions to header <ctime>done  C library responsibility
    C2.30Additions to header <cwchar>done   
    C2.30.1Synopsisdone   
    C2.30.2Definitionsdone   
    C2.30.3Additional wide format specifiersdone  C library responsibility
    C2.31Additions to header <wchar.h>done   
    C2.32Additions to header <cwctype>done   
    C2.32.1Synopsisdone   
    C2.32.2Function iswblankdone   
    C2.33Additions to header <wctype.h>done   
    DCompatibility Features
    D.6Old iostream membersdone   
    D.8Bindersdone  33911
    D.9Class template auto_ptrdone  33911

    +

    20.6.6.2.7shared_ptr comparisondone   
    20.6.6.2.8shared_ptr I/Odone   
    20.6.6.2.9shared_ptr specialized algorithmsdone   
    20.6.6.2.10shared_ptr castsdone   
    20.6.6.2.11get_deleterdone   
    20.6.6.3Class template weak_ptrdone   
    20.6.6.3.1weak_ptr constructorsdone   
    20.6.6.3.2weak_ptr destructordone   
    20.6.6.3.3weak_ptr assignmentdone   
    20.6.6.3.4weak_ptr modifiersdone   
    20.6.6.3.5weak_ptr observersdone   
    20.6.6.3.6weak_ptr comparisondone   
    20.6.6.3.7weak_ptr specialized algorithmsdone   
    20.6.6.4Class template enable_shared_from_thisdone   
    23Containers
    23.2.1Header <array> synopsisdone   
    23.2.1Class template arraydone   
    23.2.1.1array constructors, copy, and assignmentdone   
    23.2.1.2array specialized algorithmsdone   
    23.2.1.3array sizedone   
    23.2.1.4array datadone   
    23.2.1.5Zero sized arraysdone   
    23.2.1.6Tuple interface to class template arraydone   
    23.4Unordered associative containersdone   
    23.4.1Class template unordered_mapdone   
    23.4.1.1unordered_map constructorsdone   
    23.4.1.2unordered_map element accessdone   
    23.4.1.3unordered_map swapdone   
    23.4.2Class template unordered_multimapdone   
    23.4.2.1unordered_multimap constructorsdone   
    23.4.2.2unordered_multimap swapdone   
    23.4.3Class template unordered_setdone   
    23.4.3.1unordered_set constructorsdone   
    23.4.3.2unordered_set swapdone   
    23.4.4Class template unordered_multisetdone   
    23.4.4.1unordered_multiset constructorsdone   
    23.4.4.2unordered_multiset swapdone   
    26Numerics
    26.4Random number generationdone   
    26.4.1Requirementsdone   
    26.4.2Header <random> synopsis  partial 
    26.4.3Random number engine class templatesdone   
    26.4.3.1Class template linear_congruential_enginedone   
    26.4.3.2Class template mersenne_twister_enginedone   
    26.4.3.3Class template subtract_with_carry_enginedone   
    26.4.4Random number engine adaptor class templatesdone   
    26.4.4.1Class template discard_block_enginedone   
    26.4.4.2Class template independent_bits_enginedone   
    26.4.4.3Class template shuffle_order_enginedone   
    26.4.4.4Class template xor_combine_enginedone  operator()() per N2079
    26.4.5Engines and engine adaptors with predefined parametersdone   
    26.4.6Class random_devicedone   
    26.4.7Utilitiesdone   
    26.4.7.1Class seed_seq  missing 
    26.4.7.2Function template generate_canonical  missing 
    26.4.8Random number generation class templatesdone   
    26.4.8.1Uniform distributions  partial 
    26.4.8.1Class template uniform_int_distribution  missing 
    26.4.8.1Class template uniform_real_distribution  missing 
    26.4.8.2Bernoulli distributions  partial 
    26.4.8.2.1Class bernoulli_distributiondone   
    26.4.8.2.2Class template binomial_distributiondone   
    26.4.8.2.3Class template geometric_distributiondone   
    26.4.8.2.4Class template negative_binomial_distribution  missing 
    26.4.8.3Poisson distributions  partial 
    26.4.8.3.1Class template poisson_distributiondone   
    26.4.8.3.2Class template exponential_distributiondone   
    26.4.8.3.3Class template gamma_distributiondone   
    26.4.8.3.4Class template weibull_distribution  missing 
    26.4.8.3.5Class template extreme_value_distribution  missing 
    26.4.8.4Normal distributions  partial 
    26.4.8.4.1Class template normal_distributiondone   
    26.4.8.4.2Class template lognormal_distribution  missing 
    26.4.8.4.3Class template chi_squared_distribution  missing 
    26.4.8.4.4Class template cauchy_distribution  missing 
    26.4.8.4.5Class template fisher_f_distribution  missing 
    26.4.8.4.6Class template student_t_distribution  missing 
    26.4.8.5Sampling distributions  missing 
    26.4.8.5.1Class template discrete_distribution  missing 
    26.4.8.5.1Class template piecewise_constant_distribution  missing 
    26.4.8.5.1Class template general_pdf_distribution  missing 
    28Regular Expressions
    28.1Definitions  missing 
    28.2Requirements  missing 
    28.3Regular expressions summary  missing 
    28.4Header <regex> synopsis  missing 
    28.5Namespace tr1::regex_constants  missing 
    28.5.1Bitmask Type syntax_option_type  missing 
    28.5.2Bitmask Type regex_constants::match_flag_type  missing 
    28.5.3Implementation defined error_type  missing 
    28.6Class regex_error  missing 
    28.7Class template regex_traits  missing 
    28.8Class template basic_regex  missing 
    28.8.1basic_regex constants  missing 
    28.8.2basic_regex constructors  missing 
    28.8.3basic_regex assign  missing 
    28.8.4basic_regex constant operations  missing 
    28.8.5basic_regex locale  missing 
    28.8.6basic_regex swap  missing 
    28.8.7basic_regex non-member functions  missing 
    28.8.7.1basic_regex non-member swap  missing 
    28.9Class template sub_match  missing 
    28.9.1sub_match members  missing 
    28.9.2sub_match non-member operators  missing 
    28.10Class template match_results  missing 
    28.10.1match_results constructors  missing 
    28.10.2match_results size  missing 
    28.10.3match_results element access  missing 
    28.10.4match_results formatting  missing 
    28.10.5match_results allocator  missing 
    28.10.6match_results swap  missing 
    28.11Regular expression algorithms  missing 
    28.11.1exceptions  missing 
    28.11.2regex_match  missing 
    28.11.3regex_search  missing 
    28.11.4regex_replace  missing 
    28.12Regular expression Iterators  missing 
    28.12.1Class template regex_iterator  missing 
    28.12.1.1regex_iterator constructors  missing 
    28.12.1.2regex_iterator comparisons  missing 
    28.12.1.3regex_iterator dereference  missing 
    28.12.1.4regex_iterator increment  missing 
    28.12.2Class template regex_token_iterator  missing 
    28.12.2.1regex_token_iterator constructors  missing 
    28.12.2.2regex_token_iterator comparisons  missing 
    28.12.2.3regex_token_iterator dereference  missing 
    28.12.2.4regex_token_iterator increment  missing 
    28.13Modified ECMAScript regular expression grammar  missing 
    CC Compatibility
    C2.1Additions to header <complex>done   
    C2.1.1Synopsisdone   
    C2.1.2Function acosdone   
    C2.1.3Function asindone   
    C2.1.4Function atandone   
    C2.1.5Function acoshdone   
    C2.1.6Function asinhdone   
    C2.1.7Function atanhdone   
    C2.1.8Function fabsdone   
    C2.1.9Additional Overloadsdone   
    C2.2Header <ccomplex>  missingDR 551
    C2.3Header <complex.h>  missingDR 551
    C2.4Additions to header <cctype>done   
    C2.4.1Synopsisdone   
    C2.4.2Function isblankdone   
    C2.5Additions to header <ctype.h>done   
    C2.6Header <cfenv>done   
    C2.6.1Synopsisdone   
    C2.6.2Definitionsdone   
    C2.7Header <fenv.h>done   
    C2.8Additions to header <cfloat>done   
    C2.9Additions to header <float.h>done   
    C2.10Additions to header <ios>  missing 
    C2.10.1Synopsis  missing 
    C2.10.2Function hexfloat  missing 
    C2.11Header <cinttypes>done   
    C2.11.1Synopsisdone  DR 557
    C2.11.2Definitionsdone   
    C2.12Header <inttypes.h>done   
    C2.13Additions to header <climits>done   
    C2.14Additions to header <limits.h>done   
    C2.15Additions to header <locale>  missing 
    C2.16Additions to header <cmath>done   
    C2.16.1Synopsisdone   
    C2.16.2Definitionsdone   
    C2.16.3Function template definitionsdone   
    C2.16.4Additional overloadsdone  DR 568; DR 550
    C2.17Additions to header <math.h>done   
    C2.18Additions to header <cstdarg>done   
    C2.19Additions to header <stdarg.h>done   
    C2.20The header <cstdbool>done   
    C2.21The header <stdbool.h>done   
    C2.22The header <cstdint>done   
    C2.22.1Synopsisdone   
    C2.22.2Definitionsdone   
    C2.23The header <stdint.h>done   
    C2.24Additions to header <cstdio>done   
    C2.24.1Synopsisdone   
    C2.24.2Definitionsdone   
    C2.24.3Additional format specifiersdone  C library responsibility
    C2.24.4Additions to header <stdio.h>done   
    C2.25Additions to header <cstdlib>done   
    C2.25.1Synopsisdone   
    C2.25.2Definitionsdone   
    C2.25.3Function absdone   
    C2.25.4Function divdone   
    C2.26Additions to header <stdlib.h>done   
    C2.27Header <ctgmath>done  DR 551
    C2.28Header <tgmath.h>done  DR 551
    C2.29Additions to header <ctime>done  C library responsibility
    C2.30Additions to header <cwchar>done   
    C2.30.1Synopsisdone   
    C2.30.2Definitionsdone   
    C2.30.3Additional wide format specifiersdone  C library responsibility
    C2.31Additions to header <wchar.h>done   
    C2.32Additions to header <cwctype>done   
    C2.32.1Synopsisdone   
    C2.32.2Function iswblankdone   
    C2.33Additions to header <wctype.h>done   
    DCompatibility Features
    D.6Old iostream membersdone   
    D.8Bindersdone  33911
    D.9Class template auto_ptrdone  33911

    Footnotes

    The shared_ptr implementation uses some code from the diff --git a/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html b/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html index 6bdc0333a32..6daf4365f73 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html +++ b/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html @@ -19,15 +19,15 @@ the 1998 standard as updated for 2003, and the draft of the upcoming 200x standard.

    - C++98/03 include files. These are available in the default compilation mode, ie -std=c++98 or -std=gnu++98. -

    Table 3.1. C++ 1998 Library Headers

    algorithmiomaniplistostreamstreambuf
    bitsetioslocalequeuestring
    complexiosfwdmapsettypeinfo
    dequeiostreammemorysstreamutility
    exceptionistreamnewstackvalarray
    fstreamiteratornumericstdexceptvector
    functionallimits   

    Table 3.2. C++ 1998 Library Headers for C Library Facilities

    cassertciso646csetjmpcstdioctime
    cctypeclimitscsignalcstdlibcwchar
    cerrnoclocalecstdargcstringcwctype
    cfloatcmathcstddef  

    C++0x include files. These are only available in C++0x compilation mode, ie -std=c++0x or -std=gnu++0x. -

    Table 3.3. C++ 200x Library Headers

    algorithmiomaniplocaleregextuple
    arrayiosmapsettypeinfo
    bitsetiosfwdmemorysstreamtype_traits
    complexiostreamnewstackunordered_map
    dequeistreamnumericstdexceptunordered_set
    exceptioniteratorostreamstreambufutility
    fstreamlimitsqueuestringvalarray
    functionallistrandomsystem_errorvector

    Table 3.4. C++ 200x Library Headers for C Library Facilities

    cassertcfloatcmathcstddefctgmath
    ccomplexcinttypescsetjmpcstdintctime
    cctypeciso646csignalcstdiocuchar
    cerrnoclimitscstdargcstdlibcwchar
    cfenvclocalecstdboolcstringcwctype

    + C++98/03 include files. These are available in the default compilation mode, i.e. -std=c++98 or -std=gnu++98. +

    Table 3.1. C++ 1998 Library Headers

    algorithmiomaniplistostreamstreambuf
    bitsetioslocalequeuestring
    complexiosfwdmapsettypeinfo
    dequeiostreammemorysstreamutility
    exceptionistreamnewstackvalarray
    fstreamiteratornumericstdexceptvector
    functionallimits   

    Table 3.2. C++ 1998 Library Headers for C Library Facilities

    cassertciso646csetjmpcstdioctime
    cctypeclimitscsignalcstdlibcwchar
    cerrnoclocalecstdargcstringcwctype
    cfloatcmathcstddef  

    C++0x include files. These are only available in C++0x compilation mode, i.e. -std=c++0x or -std=gnu++0x. +

    Table 3.3. C++ 200x Library Headers

    algorithmiomaniplocaleregextuple
    arrayiosmapsettypeinfo
    bitsetiosfwdmemorysstreamtype_traits
    complexiostreamnewstackunordered_map
    dequeistreamnumericstdexceptunordered_set
    exceptioniteratorostreamstreambufutility
    fstreamlimitsqueuestringvalarray
    functionallistrandomsystem_errorvector

    Table 3.4. C++ 200x Library Headers for C Library Facilities

    cassertcfloatcmathcstddefctgmath
    ccomplexcinttypescsetjmpcstdintctime
    cctypeciso646csignalcstdiocuchar
    cerrnoclimitscstdargcstdlibcwchar
    cfenvclocalecstdboolcstringcwctype

    In addition, TR1 includes as: -

    Table 3.5. C++ TR1 Library Headers

    tr1/arraytr1/memorytr1/regextr1/type_traitstr1/unordered_set
    tr1/complextr1/randomtr1/tupletr1/unordered_maptr1/utility
    tr1/functional    

    Table 3.6. C++ TR1 Library Headers for C Library Facilities

    tr1/cmathtr1/cfloattr1/cstdargtr1/cstdiotr1/ctime
    tr1/ccomplextr1/cinttypestr1/cstdbooltr1/cstdlibtr1/cwchar
    tr1/cfenvtr1/climitstr1/cstdinttr1/ctgmathtr1/cwctype

    +

    Table 3.5. C++ TR1 Library Headers

    tr1/arraytr1/memorytr1/regextr1/type_traitstr1/unordered_set
    tr1/complextr1/randomtr1/tupletr1/unordered_maptr1/utility
    tr1/functional    

    Table 3.6. C++ TR1 Library Headers for C Library Facilities

    tr1/cmathtr1/cfloattr1/cstdargtr1/cstdiotr1/ctime
    tr1/ccomplextr1/cinttypestr1/cstdbooltr1/cstdlibtr1/cwchar
    tr1/cfenvtr1/climitstr1/cstdinttr1/ctgmathtr1/cwctype

    Also included are files for the C++ ABI interface: -

    Table 3.7. C++ ABI Headers

    cxxabi.hcxxabi_forced.h

    +

    Table 3.7. C++ ABI Headers

    cxxabi.hcxxabi_forced.h

    And a large variety of extensions. -

    Table 3.8. Extension Headers

    ext/algorithmext/debug_allocator.hext/mt_allocator.hext/pod_char_traits.hext/stdio_sync_filebuf.h
    ext/array_allocator.hext/enc_filebuf.hext/new_allocator.hext/pool_allocator.hext/throw_allocator.h
    ext/atomicity.hext/functionalext/numericext/rb_treeext/typelist.h
    ext/bitmap_allocator.hext/iteratorext/numeric_traits.hext/ropeext/type_traits.h
    ext/codecvt_specializations.hext/malloc_allocator.hext/pb_ds/assoc_container.hext/slistext/vstring.h
    ext/concurrence.hext/memoryext/pb_ds/priority_queue.hext/stdio_filebuf.h 

    Table 3.9. Extension Debug Headers

    debug/bitsetdebug/listdebug/setdebug/unordered_mapdebug/vector
    debug/dequedebug/mapdebug/stringdebug/unordered_set 

    Table 3.10. Extension Parallel Headers

    parallel/algorithmparallel/numeric

    Mixing Headers

    A few simple rules. +

    Table 3.8. Extension Headers

    ext/algorithmext/debug_allocator.hext/mt_allocator.hext/pod_char_traits.hext/stdio_sync_filebuf.h
    ext/array_allocator.hext/enc_filebuf.hext/new_allocator.hext/pool_allocator.hext/throw_allocator.h
    ext/atomicity.hext/functionalext/numericext/rb_treeext/typelist.h
    ext/bitmap_allocator.hext/iteratorext/numeric_traits.hext/ropeext/type_traits.h
    ext/codecvt_specializations.hext/malloc_allocator.hext/pb_ds/assoc_container.hext/slistext/vstring.h
    ext/concurrence.hext/memoryext/pb_ds/priority_queue.hext/stdio_filebuf.h 

    Table 3.9. Extension Debug Headers

    debug/bitsetdebug/listdebug/setdebug/unordered_mapdebug/vector
    debug/dequedebug/mapdebug/stringdebug/unordered_set 

    Table 3.10. Extension Parallel Headers

    parallel/algorithmparallel/numeric

    Mixing Headers

    A few simple rules.

    First, mixing different dialects of the standard headers is not possible. It's an all-or-nothing affair. Thus, code like

    diff --git a/libstdc++-v3/doc/html/manual/bk01pt01ch03s03.html b/libstdc++-v3/doc/html/manual/bk01pt01ch03s03.html
    index 50ea8771de3..bb6e28196fd 100644
    --- a/libstdc++-v3/doc/html/manual/bk01pt01ch03s03.html
    +++ b/libstdc++-v3/doc/html/manual/bk01pt01ch03s03.html
    @@ -2,7 +2,7 @@
     
     Namespaces

    Namespaces

    Available Namespaces

    There are three main namespaces.

    • std

      The ISO C++ standards specify that "all library entities are defined -within namespace std." This includes namepaces nested +within namespace std." This includes namespaces nested within namespace std, such as namespace std::tr1.

    • abi

      Specified by the C++ ABI. This ABI specifies a number of type and diff --git a/libstdc++-v3/doc/html/manual/bk01pt02pr01.html b/libstdc++-v3/doc/html/manual/bk01pt02pr01.html index 46dbe2ab865..811d492188b 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt02pr01.html +++ b/libstdc++-v3/doc/html/manual/bk01pt02pr01.html @@ -1,6 +1,6 @@ -

      +

      This part deals with the functions called and objects created automatically during the course of a program's existence.

      diff --git a/libstdc++-v3/doc/html/manual/bk01pt03ch07.html b/libstdc++-v3/doc/html/manual/bk01pt03ch07.html index a258631cb16..e29d2bf2d49 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt03ch07.html +++ b/libstdc++-v3/doc/html/manual/bk01pt03ch07.html @@ -11,6 +11,6 @@ string member.

      Derived from this are several classes that may have a - string member: a full heirarchy can be + string member: a full hierarchy can be found in the source documentation.

      diff --git a/libstdc++-v3/doc/html/manual/bk01pt04ch11.html b/libstdc++-v3/doc/html/manual/bk01pt04ch11.html index d1f0024810f..4682fe3e46e 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt04ch11.html +++ b/libstdc++-v3/doc/html/manual/bk01pt04ch11.html @@ -11,7 +11,7 @@ class template called allocator. The allocator abstraction is used throughout the library in string, container classes, - algorithnms, and parts of iostreams. This class, and base classes of + algorithms, and parts of iostreams. This class, and base classes of it, are the superset of available free store (“heap”) management classes.

      Requirements

      @@ -90,7 +90,7 @@ or loading and unloading shared objects in memory. As such, using caching allocators on systems that do not support abi::__cxa_atexit is not recommended. -

      Implementation

      Interface Design

      +

      Implementation

      Interface Design

      The only allocator interface that is support is the standard C++ interface. As such, all STL containers have been adjusted, and all external allocators have @@ -103,7 +103,7 @@

      The base class that allocator is derived from may not be user-configurable. -

      Selecting Default Allocation Policy

      +

      Selecting Default Allocation Policy

      It's difficult to pick an allocation strategy that will provide maximum utility, without excessively penalizing some behavior. In fact, it's difficult just deciding which typical actions to measure @@ -140,7 +140,7 @@ The current default choice for allocator is __gnu_cxx::new_allocator. -

      Disabling Memory Caching

      +

      Disabling Memory Caching

      In use, allocator may allocate and deallocate using implementation-specified strategies and heuristics. Because of this, every call to an allocator object's @@ -161,7 +161,7 @@ directly, for every allocation. (See include/ext/new_allocator.h, for instance.) However, that option would involve changing source code to use - the a non-default allocator. Another option is to force the + a non-default allocator. Another option is to force the default allocator to remove caching and pools, and to directly allocate with every call of allocate and directly deallocate with every call of @@ -245,7 +245,7 @@ throw_allocator

      Includes memory tracking and marking abilities as well as hooks for - throwing exceptinos at configurable intervals (including random, + throwing exceptions at configurable intervals (including random, all, none).

    • __pool_alloc @@ -282,13 +282,13 @@

      The thr boolean determines whether the pool should be manipulated atomically or not. When thr = true, the allocator - is is threadsafe, while thr = + is is thread-safe, while thr = false, and is slightly faster but unsafe for multiple threads.

      For thread-enabled configurations, the pool is locked with a single big lock. In some situations, this implementation detail - may result in severe performance degredation. + may result in severe performance degradation.

      (Note that the GCC thread abstraction layer allows us to provide safe zero-overhead stubs for the threading routines, if threads @@ -305,11 +305,11 @@ A high-performance allocator that uses a bit-map to keep track of the used and unused memory locations. It has its own documentation, found here. -

    Bibliography

    +

    Bibliography

    ISO/IEC 14882:1998 Programming languages - C++ . isoc++_1998 - 20.4 Memory.

    The Standard Librarian: What Are Allocators Good + 20.4 Memory.

    The Standard Librarian: What Are Allocators Good . austernm Matt Austern. @@ -317,28 +317,28 @@ . - .

    The Hoard Memory Allocator. + .

    The Hoard Memory Allocator. emeryb Emery Berger. - .

    Reconsidering Custom Memory Allocation. + .

    Reconsidering Custom Memory Allocation. bergerzorn Emery Berger. Ben Zorn. Kathryn McKinley. Copyright © 2002 OOPSLA. - .

    Allocator Types. + .

    Allocator Types. kreftlanger Klaus Kreft. Angelika Langer. C/C++ Users Journal . - .

    The C++ Programming Language. + .

    The C++ Programming Language. tcpl Bjarne Stroustrup. Copyright © 2000 . 19.4 Allocators. Addison Wesley - .

    Yalloc: A Recycling C++ Allocator. + .

    Yalloc: A Recycling C++ Allocator. yenf Felix Yen. Copyright © . diff --git a/libstdc++-v3/doc/html/manual/bk01pt05ch13.html b/libstdc++-v3/doc/html/manual/bk01pt05ch13.html index bc03ae817d9..e50eb1fe71c 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt05ch13.html +++ b/libstdc++-v3/doc/html/manual/bk01pt05ch13.html @@ -1,13 +1,13 @@ -Chapter 13. String Classes

    Chapter 13. String Classes

    Simple Transformations

    +Chapter 13. String Classes

    Chapter 13. String Classes

    Simple Transformations

    Here are Standard, simple, and portable ways to perform common transformations on a string instance, such as "convert to all upper case." The word transformations is especially apt, because the standard template function transform<> is used.

    - This code will go through some iterations. Here's a simiple + This code will go through some iterations. Here's a simple version:

        #include <string>
    @@ -86,4 +86,4 @@
        str.erase(notwhite+1); 

    Obviously, the calls to find could be inserted directly into the calls to erase, in case your compiler does not optimize named temporaries out of existence. -

    +

    diff --git a/libstdc++-v3/doc/html/manual/bk01pt05ch13s02.html b/libstdc++-v3/doc/html/manual/bk01pt05ch13s02.html index 603721cd88d..2db68f6d814 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt05ch13s02.html +++ b/libstdc++-v3/doc/html/manual/bk01pt05ch13s02.html @@ -1,6 +1,6 @@ -Case Sensivitity

    Case Sensivitity

    +Case Sensitivity

    Case Sensitivity

    The well-known-and-if-it-isn't-well-known-it-ought-to-be Guru of the Week discussions held on Usenet covered this topic in January of 1998. diff --git a/libstdc++-v3/doc/html/manual/bk01pt05ch13s03.html b/libstdc++-v3/doc/html/manual/bk01pt05ch13s03.html index c321667a729..49f416a170c 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt05ch13s03.html +++ b/libstdc++-v3/doc/html/manual/bk01pt05ch13s03.html @@ -1,6 +1,6 @@ -Arbitrary Character Types

    Arbitrary Character Types

    +Arbitrary Character Types

    Arbitrary Character Types

    The std::basic_string is tantalizingly general, in that it is parameterized on the type of the characters which it holds. In theory, you could whip up a Unicode character class and instantiate @@ -54,4 +54,4 @@ nice-looking first attempt turned out to not be conforming C++, due to the rule that CharT must be a POD. (See how tricky this is?) -

    +

    diff --git a/libstdc++-v3/doc/html/manual/bk01pt06ch14.html b/libstdc++-v3/doc/html/manual/bk01pt06ch14.html index 7b98960a0a0..e1d2aa0a438 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt06ch14.html +++ b/libstdc++-v3/doc/html/manual/bk01pt06ch14.html @@ -19,7 +19,7 @@ thousands separator is in the German locale.

    Literally, a facet is strictly defined:

    • - Dontaining the following public data member: + Containing the following public data member:

      static locale::id id;

    • @@ -42,11 +42,11 @@ class id Provides an index for looking up specific facets.

    Design

    The major design challenge is fitting an object-orientated and -non-global locale design ontop of POSIX and other relevant stanards, +non-global locale design on top of POSIX and other relevant standards, which include the Single Unix (nee X/Open.)

    Because C and earlier versions of POSIX falls down so completely, -portibility is an issue. +portability is an issue.

    Implementation

    Interacting with "C" locales

    • `locale -a` displays available locales.

      @@ -372,7 +372,7 @@ relation (of the C++ locale mechanism) to the C locale mechanism: the
       global C locale is modified if a named C++ locale object is set as the
       global locale" (emphasis Paolo), that is:
       

      std::locale::global(std::locale(""));

      affects the C functions as if the following call was made:

      std::setlocale(LC_ALL, "");

      - On the other hand, there is *no* viceversa, that is, calling + On the other hand, there is *no* vice versa, that is, calling setlocale has *no* whatsoever on the C++ locale mechanism, in particular on the working of locale(""), which constructs the locale object from the environment of the running program, that is, in @@ -383,7 +383,7 @@ global locale" (emphasis Paolo), that is: has already taken place?

    • Document how named locales error check when filling data - members. Ie, a fr_FR locale that doesn't have + members. I.e., a fr_FR locale that doesn't have numpunct::truename(): does it use "true"? Or is it a blank string? What's the convention?

    • @@ -393,27 +393,27 @@ global locale" (emphasis Paolo), that is: language code and ISO country code (say, "de_DE").

    • What should non-required facet instantiations do? If the - generic implemenation is provided, then how to end-users + generic implementation is provided, then how to end-users provide specializations? -

    Bibliography

    +

    Bibliography

    The GNU C Library - . Roland McGrath. Ulrich Drepper. Copyright © 2007 FSF. Chapters 6 Character Set Handling and 7 Locales and Internationalization.

    + . Roland McGrath. Ulrich Drepper. Copyright © 2007 FSF. Chapters 6 Character Set Handling and 7 Locales and Internationalization.

    Correspondence - . Ulrich Drepper. Copyright © 2002 .

    + . Ulrich Drepper. Copyright © 2002 .

    ISO/IEC 14882:1998 Programming languages - C++ - . Copyright © 1998 ISO.

    + . Copyright © 1998 ISO.

    ISO/IEC 9899:1999 Programming languages - C - . Copyright © 1999 ISO.

    + . Copyright © 1999 ISO.

    System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x) . Copyright © 1999 The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. - .

    + .

    The C++ Programming Language, Special Edition . Bjarne Stroustrup. Copyright © 2000 Addison Wesley, Inc.. Appendix D. Addison Wesley - .

    + .

    Standard C++ IOStreams and Locales . Advanced Programmer's Guide and Reference diff --git a/libstdc++-v3/doc/html/manual/bk01pt06ch15.html b/libstdc++-v3/doc/html/manual/bk01pt06ch15.html index 2a3811806a7..7bad31da01b 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt06ch15.html +++ b/libstdc++-v3/doc/html/manual/bk01pt06ch15.html @@ -1,6 +1,6 @@ -Chapter 15. Facets aka Categories

    Chapter 15. Facets aka Categories

    ctype

    Implementation

    Specializations

    +Chapter 15. Facets aka Categories

    Chapter 15. Facets aka Categories

    ctype

    Implementation

    Specializations

    For the required specialization codecvt<wchar_t, char, mbstate_t> , conversions are made between the internal character set (always UCS4 on GNU/Linux) and whatever the currently selected locale for the @@ -41,31 +41,31 @@ characters. this class?

  • Get the ctype<wchar_t>::mask stuff under control. Need to - make some kind of static table, and not do lookup evertime + make some kind of static table, and not do lookup every time somebody hits the do_is... functions. Too bad we can't just redefine mask for ctype<wchar_t>

  • Rename abstract base class. See if just smash-overriding is a better approach. Clarify, add sanity to naming. -

  • Bibliography

    +

    Bibliography

    The GNU C Library - . Roland McGrath. Ulrich Drepper. Copyright © 2007 FSF. Chapters 6 Character Set Handling and 7 Locales and Internationalization.

    + . Roland McGrath. Ulrich Drepper. Copyright © 2007 FSF. Chapters 6 Character Set Handling and 7 Locales and Internationalization.

    Correspondence - . Ulrich Drepper. Copyright © 2002 .

    + . Ulrich Drepper. Copyright © 2002 .

    ISO/IEC 14882:1998 Programming languages - C++ - . Copyright © 1998 ISO.

    + . Copyright © 1998 ISO.

    ISO/IEC 9899:1999 Programming languages - C - . Copyright © 1999 ISO.

    + . Copyright © 1999 ISO.

    System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x) . Copyright © 1999 The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. - .

    + .

    The C++ Programming Language, Special Edition . Bjarne Stroustrup. Copyright © 2000 Addison Wesley, Inc.. Appendix D. Addison Wesley - .

    + .

    Standard C++ IOStreams and Locales . Advanced Programmer's Guide and Reference diff --git a/libstdc++-v3/doc/html/manual/bk01pt09pr02.html b/libstdc++-v3/doc/html/manual/bk01pt09pr02.html index d5cedbdfd3f..365ae11cb8d 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt09pr02.html +++ b/libstdc++-v3/doc/html/manual/bk01pt09pr02.html @@ -1,6 +1,6 @@ -

    +

    The neatest accomplishment of the algorithms chapter is that all the work is done via iterators, not containers directly. This means two important things: diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch30s03.html b/libstdc++-v3/doc/html/manual/bk01pt12ch30s03.html index d52674bbb3d..e293caa2668 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch30s03.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch30s03.html @@ -19,6 +19,6 @@ mode or with debug mode. The following table provides the names and headers of the debugging containers: -

    Table 30.1. Debugging Containers

    ContainerHeaderDebug containerDebug header  
    std::bitsetbitset__gnu_debug::bitsetbitset  
    std::dequedeque__gnu_debug::dequedeque  
    std::listlist__gnu_debug::listlist  
    std::mapmap__gnu_debug::mapmap  
    std::multimapmap__gnu_debug::multimapmap  
    std::multisetset__gnu_debug::multisetset  
    std::setset__gnu_debug::setset  
    std::stringstring__gnu_debug::stringstring  
    std::wstringstring__gnu_debug::wstringstring  
    std::basic_stringstring__gnu_debug::basic_stringstring  
    std::vectorvector__gnu_debug::vectorvector  

    In addition, when compiling in C++0x mode, these additional +

    Table 30.1. Debugging Containers

    ContainerHeaderDebug containerDebug header  
    std::bitsetbitset__gnu_debug::bitsetbitset  
    std::dequedeque__gnu_debug::dequedeque  
    std::listlist__gnu_debug::listlist  
    std::mapmap__gnu_debug::mapmap  
    std::multimapmap__gnu_debug::multimapmap  
    std::multisetset__gnu_debug::multisetset  
    std::setset__gnu_debug::setset  
    std::stringstring__gnu_debug::stringstring  
    std::wstringstring__gnu_debug::wstringstring  
    std::basic_stringstring__gnu_debug::basic_stringstring  
    std::vectorvector__gnu_debug::vectorvector  

    In addition, when compiling in C++0x mode, these additional containers have additional debug capability. -

    Table 30.2. Debugging Containers C++0x

    ContainerHeaderDebug containerDebug header  
    std::unordered_mapunordered_map__gnu_debug::unordered_mapunordered_map  
    std::unordered_multimapunordered_map__gnu_debug::unordered_multimapunordered_map  
    std::unordered_setunordered_set__gnu_debug::unordered_setunordered_set  
    std::unordered_multisetunordered_set__gnu_debug::unordered_multisetunordered_set  

    +

    Table 30.2. Debugging Containers C++0x

    ContainerHeaderDebug containerDebug header  
    std::unordered_mapunordered_map__gnu_debug::unordered_mapunordered_map  
    std::unordered_multimapunordered_map__gnu_debug::unordered_multimapunordered_map  
    std::unordered_setunordered_set__gnu_debug::unordered_setunordered_set  
    std::unordered_multisetunordered_set__gnu_debug::unordered_multisetunordered_set  

    diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch30s04.html b/libstdc++-v3/doc/html/manual/bk01pt12ch30s04.html index 53b2d4c3825..141978a48c7 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch30s04.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch30s04.html @@ -187,7 +187,7 @@ template<typename _Tp, typename _Allocator = allocator<_Tp> allows release-compiled and debug-compiled code to be linked and executed together without causing unpredictable behavior. This guarantee minimizes the recompilation that users are required to - perform, shortening the detect-compile-debug bughunting cycle + perform, shortening the detect-compile-debug bug hunting cycle and making the debug mode easier to incorporate into development environments by minimizing dependencies.

    Achieving link- and run-time coexistence is not a trivial implementation task. To achieve this goal we required a small diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch31s02.html b/libstdc++-v3/doc/html/manual/bk01pt12ch31s02.html index e06362edd9f..a22fd095932 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch31s02.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch31s02.html @@ -1,7 +1,7 @@ Semantics

    Semantics

    The parallel mode STL algorithms are currently not exception-safe, -i. e. user-defined functors must not throw exceptions. +i.e. user-defined functors must not throw exceptions.

    Since the current GCC OpenMP implementation does not support OpenMP parallel regions in concurrent threads, it is not possible to call parallel STL algorithm in diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch31s03.html b/libstdc++-v3/doc/html/manual/bk01pt12ch31s03.html index 97fdb5ba1b5..2e03e0e9943 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch31s03.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch31s03.html @@ -1,20 +1,22 @@ -Using

    Using

    Using Parallel Mode

    To use the libstdc++ parallel mode, compile your application with - the compiler flag -D_GLIBCXX_PARALLEL -fopenmp. This +Using

    Using

    Using Parallel Mode

    + To use the libstdc++ parallel mode, compile your application with + the compiler flag -D_GLIBCXX_PARALLEL -fopenmp. This will link in libgomp, the GNU OpenMP implementation, whose presence is mandatory. In addition, hardware capable of atomic operations is mandatory. Actually activating these atomic operations may require explicit compiler flags on some targets - (like sparc and x86), such as -march=i686, - -march=native or -mcpu=v9. -

    Note that the _GLIBCXX_PARALLEL define may change the + (like sparc and x86), such as -march=i686, + -march=native or -mcpu=v9. +

    Note that the _GLIBCXX_PARALLEL define may change the sizes and behavior of standard class templates such as - std::search, and therefore one can only link code + std::search, and therefore one can only link code compiled with parallel mode and code compiled without parallel mode if no instantiation of a container is passed between the two translation units. Parallel mode functionality has distinct linkage, - and cannot be confused with normal mode symbols.

    Using Specific Parallel Components

    When it is not feasible to recompile your entire application, or + and cannot be confused with normal mode symbols. +

    Using Specific Parallel Components

    When it is not feasible to recompile your entire application, or only specific algorithms need to be parallel-aware, individual parallel algorithms can be made available explicitly. These parallel algorithms are functionally equivalent to the standard @@ -23,4 +25,4 @@ compiled with either release mode or with parallel mode. The following table provides the names and headers of the parallel algorithms: -

    Table 31.1. Parallel Algorithms

    AlgorithmHeaderParallel algorithmParallel header
    std::accumulatenumeric__gnu_parallel::accumulateparallel/numeric
    std::adjacent_differencenumeric__gnu_parallel::adjacent_differenceparallel/numeric
    std::inner_productnumeric__gnu_parallel::inner_productparallel/numeric
    std::partial_sumnumeric__gnu_parallel::partial_sumparallel/numeric
    std::adjacent_findalgorithm__gnu_parallel::adjacent_findparallel/algorithm
    std::countalgorithm__gnu_parallel::countparallel/algorithm
    std::count_ifalgorithm__gnu_parallel::count_ifparallel/algorithm
    std::equalalgorithm__gnu_parallel::equalparallel/algorithm
    std::findalgorithm__gnu_parallel::findparallel/algorithm
    std::find_ifalgorithm__gnu_parallel::find_ifparallel/algorithm
    std::find_first_ofalgorithm__gnu_parallel::find_first_ofparallel/algorithm
    std::for_eachalgorithm__gnu_parallel::for_eachparallel/algorithm
    std::generatealgorithm__gnu_parallel::generateparallel/algorithm
    std::generate_nalgorithm__gnu_parallel::generate_nparallel/algorithm
    std::lexicographical_comparealgorithm__gnu_parallel::lexicographical_compareparallel/algorithm
    std::mismatchalgorithm__gnu_parallel::mismatchparallel/algorithm
    std::searchalgorithm__gnu_parallel::searchparallel/algorithm
    std::search_nalgorithm__gnu_parallel::search_nparallel/algorithm
    std::transformalgorithm__gnu_parallel::transformparallel/algorithm
    std::replacealgorithm__gnu_parallel::replaceparallel/algorithm
    std::replace_ifalgorithm__gnu_parallel::replace_ifparallel/algorithm
    std::max_elementalgorithm__gnu_parallel::max_elementparallel/algorithm
    std::mergealgorithm__gnu_parallel::mergeparallel/algorithm
    std::min_elementalgorithm__gnu_parallel::min_elementparallel/algorithm
    std::nth_elementalgorithm__gnu_parallel::nth_elementparallel/algorithm
    std::partial_sortalgorithm__gnu_parallel::partial_sortparallel/algorithm
    std::partitionalgorithm__gnu_parallel::partitionparallel/algorithm
    std::random_shufflealgorithm__gnu_parallel::random_shuffleparallel/algorithm
    std::set_unionalgorithm__gnu_parallel::set_unionparallel/algorithm
    std::set_intersectionalgorithm__gnu_parallel::set_intersectionparallel/algorithm
    std::set_symmetric_differencealgorithm__gnu_parallel::set_symmetric_differenceparallel/algorithm
    std::set_differencealgorithm__gnu_parallel::set_differenceparallel/algorithm
    std::sortalgorithm__gnu_parallel::sortparallel/algorithm
    std::stable_sortalgorithm__gnu_parallel::stable_sortparallel/algorithm
    std::unique_copyalgorithm__gnu_parallel::unique_copyparallel/algorithm

    +

    Table 31.1. Parallel Algorithms

    AlgorithmHeaderParallel algorithmParallel header
    std::accumulatenumeric__gnu_parallel::accumulateparallel/numeric
    std::adjacent_differencenumeric__gnu_parallel::adjacent_differenceparallel/numeric
    std::inner_productnumeric__gnu_parallel::inner_productparallel/numeric
    std::partial_sumnumeric__gnu_parallel::partial_sumparallel/numeric
    std::adjacent_findalgorithm__gnu_parallel::adjacent_findparallel/algorithm
    std::countalgorithm__gnu_parallel::countparallel/algorithm
    std::count_ifalgorithm__gnu_parallel::count_ifparallel/algorithm
    std::equalalgorithm__gnu_parallel::equalparallel/algorithm
    std::findalgorithm__gnu_parallel::findparallel/algorithm
    std::find_ifalgorithm__gnu_parallel::find_ifparallel/algorithm
    std::find_first_ofalgorithm__gnu_parallel::find_first_ofparallel/algorithm
    std::for_eachalgorithm__gnu_parallel::for_eachparallel/algorithm
    std::generatealgorithm__gnu_parallel::generateparallel/algorithm
    std::generate_nalgorithm__gnu_parallel::generate_nparallel/algorithm
    std::lexicographical_comparealgorithm__gnu_parallel::lexicographical_compareparallel/algorithm
    std::mismatchalgorithm__gnu_parallel::mismatchparallel/algorithm
    std::searchalgorithm__gnu_parallel::searchparallel/algorithm
    std::search_nalgorithm__gnu_parallel::search_nparallel/algorithm
    std::transformalgorithm__gnu_parallel::transformparallel/algorithm
    std::replacealgorithm__gnu_parallel::replaceparallel/algorithm
    std::replace_ifalgorithm__gnu_parallel::replace_ifparallel/algorithm
    std::max_elementalgorithm__gnu_parallel::max_elementparallel/algorithm
    std::mergealgorithm__gnu_parallel::mergeparallel/algorithm
    std::min_elementalgorithm__gnu_parallel::min_elementparallel/algorithm
    std::nth_elementalgorithm__gnu_parallel::nth_elementparallel/algorithm
    std::partial_sortalgorithm__gnu_parallel::partial_sortparallel/algorithm
    std::partitionalgorithm__gnu_parallel::partitionparallel/algorithm
    std::random_shufflealgorithm__gnu_parallel::random_shuffleparallel/algorithm
    std::set_unionalgorithm__gnu_parallel::set_unionparallel/algorithm
    std::set_intersectionalgorithm__gnu_parallel::set_intersectionparallel/algorithm
    std::set_symmetric_differencealgorithm__gnu_parallel::set_symmetric_differenceparallel/algorithm
    std::set_differencealgorithm__gnu_parallel::set_differenceparallel/algorithm
    std::sortalgorithm__gnu_parallel::sortparallel/algorithm
    std::stable_sortalgorithm__gnu_parallel::stable_sortparallel/algorithm
    std::unique_copyalgorithm__gnu_parallel::unique_copyparallel/algorithm

    diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch31s04.html b/libstdc++-v3/doc/html/manual/bk01pt12ch31s04.html index 3db7d912e63..49db41c141d 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch31s04.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch31s04.html @@ -27,15 +27,15 @@ namespace std ... } } -

    But.... why the elipses? -

    The elipses in the example above represent additional overloads +

    But.... why the ellipses? +

    The ellipses in the example above represent additional overloads required for the parallel version of the function. These additional overloads are used to dispatch calls from the ISO C++ function signature to the appropriate parallel function (or sequential function, if no parallel functions are deemed worthy), based on either compile-time or run-time conditions.

    Compile-time conditions are referred to as "embarrassingly -parallel," and are denoted with the appropriate dispatch object, ie +parallel," and are denoted with the appropriate dispatch object, i.e., one of __gnu_parallel::sequential_tag, __gnu_parallel::parallel_tag, __gnu_parallel::balanced_tag, @@ -74,8 +74,6 @@ int main() const int threads_wanted = 20; omp_set_dynamic(false); omp_set_num_threads(threads_wanted); - if (omp_get_num_threads() != threads_wanted) - abort(); // Do work. @@ -107,7 +105,7 @@ at compile-time. See compiletime_settings.h and See features.h for details.

    Run Time Settings and Defaults

    -The default parallization strategy, the choice of specific algorithm +The default parallelization strategy, the choice of specific algorithm strategy, the minimum threshold limits for individual parallel algorithms, and aspects of the underlying hardware can be specified as desired via manipulation @@ -120,7 +118,7 @@ value of enum __gnu_parallel::_AlgorithmStrategy type. Choices include: heuristic, force_sequential, and force_parallel. The default is -implementation-deduced, ie heuristic. +implementation-deduced, i.e. heuristic.

    Next, the sub-choices for algorithm implementation. Specific algorithms like find or sort @@ -133,7 +131,7 @@ enum __gnu_parallel::_SortAlgorithm: QS_BALANCED.

    Likewise for setting the minimal threshold for algorithm -paralleization. Parallelism always incurs some overhead. Thus, it is +parallelization. Parallelism always incurs some overhead. Thus, it is not helpful to parallelize operations on very small sets of data. Because of this, measures are taken to avoid parallelizing below a certain, pre-determined threshold. For each algorithm, a minimum diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch31s05.html b/libstdc++-v3/doc/html/manual/bk01pt12ch31s05.html index 698ba3906de..ff3ea023344 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch31s05.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch31s05.html @@ -10,15 +10,15 @@ make check-parallel

    The log and summary files for conformance testing are in the - testsuite/parallel directory. + testsuite/parallel directory.

    To run the performance tests with the parallel mode active,

    -  check-performance-parallel
    +  make check-performance-parallel
       

    The result file for performance testing are in the - testsuite directory, in the file - libstdc++_performance.sum. In addition, the + testsuite directory, in the file + libstdc++_performance.sum. In addition, the policy-based containers have their own visualizations, which have additional software dependencies than the usual bare-boned text file, and can be generated by using the make diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch35.html b/libstdc++-v3/doc/html/manual/bk01pt12ch35.html index 1ab65c963a7..ac3e3955327 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch35.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch35.html @@ -13,7 +13,7 @@

    25.3 (sorting 'n' heaps 'n' stuff) is extended with some helper predicates. Look in the doxygen-generated pages for notes on these.

    • is_heap tests whether or not a range is a heap.

    • is_sorted tests whether or not a range is sorted in - nondescending order.

    25.3.8 (lexigraphical_compare) is extended with + nondescending order.

    25.3.8 (lexicographical_compare) is extended with

        lexicographical_compare_3way(_InputIter1 first1, _InputIter1 last1,
                                      _InputIter2 first2, _InputIter2 last2)

    which does... what? diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch39.html b/libstdc++-v3/doc/html/manual/bk01pt12ch39.html index 666a384f507..15ba1ca3d2d 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch39.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch39.html @@ -1,7 +1,7 @@ Chapter 39. Demangling

    Chapter 39. Demangling

    - Transforming C++ ABI itentifiers (like RTTI symbols) into the + Transforming C++ ABI identifiers (like RTTI symbols) into the original C++ source identifiers is called “demangling.”

    diff --git a/libstdc++-v3/doc/html/manual/bk01pt12ch40s02.html b/libstdc++-v3/doc/html/manual/bk01pt12ch40s02.html index 6f1f5df4b23..2e4aee7aa08 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12ch40s02.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12ch40s02.html @@ -1,6 +1,6 @@ -Implementation

    Implementation

    Using Builitin Atomic Functions

    The functions for atomic operations described above are either +Implementation

    Implementation

    Using Builtin Atomic Functions

    The functions for atomic operations described above are either implemented via compiler intrinsics (if the underlying host is capable) or by library fallbacks.

    Compiler intrinsics (builtins) are always preferred. However, as the compiler builtins for atomics are not universally implemented, @@ -22,7 +22,7 @@ hardware, hand-crafted assembly is selected. This is the case for the following

    • cris

    • hppa

    • i386

    • i486

    • m48k

    • mips

    • sparc

    And for the rest, a simulated atomic lock via pthreads.

    Detailed information about compiler intrinsics for atomic operations can be found in the GCC documentation.

    More details on the library fallbacks from the porting section. -

    Thread Abstraction

    A thin layer above IEEE 1003.1 (ie pthreads) is used to abstract +

    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 comprised of one header file that wraps the host's default thread layer with a POSIX-like interface. diff --git a/libstdc++-v3/doc/html/manual/bk01pt12pr03.html b/libstdc++-v3/doc/html/manual/bk01pt12pr03.html index 79d6d356f2c..589c107502b 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt12pr03.html +++ b/libstdc++-v3/doc/html/manual/bk01pt12pr03.html @@ -1,6 +1,6 @@ -

    +

    Here we will make an attempt at describing the non-Standard extensions to the library. Some of these are from SGI's STL, some of these are GNU's, and some just seemed to appear on the doorstep. diff --git a/libstdc++-v3/doc/html/manual/codecvt.html b/libstdc++-v3/doc/html/manual/codecvt.html index 17230b9b3c1..3af9d23abba 100644 --- a/libstdc++-v3/doc/html/manual/codecvt.html +++ b/libstdc++-v3/doc/html/manual/codecvt.html @@ -111,7 +111,7 @@ UCS2, UCS4, UNICODE, UNICODEBIG, UNICODELIcodeLE, US-ASCII, US, UTF-8, UTF-16, UTF8, UTF16).

    For iconv-based implementations, string literals for each of the -encodings (ie. "UCS-2" and "UTF-8") are necessary, +encodings (i.e. "UCS-2" and "UTF-8") are necessary, although for other, non-iconv implementations a table of enumerated values or some other mechanism may be required. @@ -130,7 +130,7 @@ mechanism may be required. conversion descriptor encodes more information than a simple encoding state type.

  • - Conversion descriptors for both directions of encoding. (ie, both + Conversion descriptors for both directions of encoding. (i.e., both UCS-2 to UTF-8 and UTF-8 to UCS-2.)

  • Something to indicate if the conversion requested if valid. @@ -179,7 +179,7 @@ The two required specializations are implemented as follows: codecvt<char, char, mbstate_t>

    -This is a degenerate (ie, does nothing) specialization. Implementing +This is a degenerate (i.e., does nothing) specialization. Implementing this was a piece of cake.

    @@ -337,41 +337,41 @@ codecvt usage.

  • wchar_t/char internal buffers and conversions between internal/external buffers? -

  • Bibliography

    +

    Bibliography

    The GNU C Library - . Roland McGrath. Ulrich Drepper. Copyright © 2007 FSF. Chapters 6 Character Set Handling and 7 Locales and Internationalization.

    + . Roland McGrath. Ulrich Drepper. Copyright © 2007 FSF. Chapters 6 Character Set Handling and 7 Locales and Internationalization.

    Correspondence - . Ulrich Drepper. Copyright © 2002 .

    + . Ulrich Drepper. Copyright © 2002 .

    ISO/IEC 14882:1998 Programming languages - C++ - . Copyright © 1998 ISO.

    + . Copyright © 1998 ISO.

    ISO/IEC 9899:1999 Programming languages - C - . Copyright © 1999 ISO.

    + . Copyright © 1999 ISO.

    System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x) . Copyright © 1999 The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. - .

    + .

    The C++ Programming Language, Special Edition . Bjarne Stroustrup. Copyright © 2000 Addison Wesley, Inc.. Appendix D. Addison Wesley - .

    + .

    Standard C++ IOStreams and Locales . Advanced Programmer's Guide and Reference . Angelika Langer. Klaus Kreft. Copyright © 2000 Addison Wesley Longman, Inc.. Addison Wesley Longman - .

    + .

    A brief description of Normative Addendum 1 . Clive Feather. Extended Character Sets. - .

    + .

    The Unicode HOWTO . Bruno Haible. - .

    + .

    UTF-8 and Unicode FAQ for Unix/Linux . Markus Khun. diff --git a/libstdc++-v3/doc/html/manual/concurrency.html b/libstdc++-v3/doc/html/manual/concurrency.html index 6b3705aabc2..561c2cf288d 100644 --- a/libstdc++-v3/doc/html/manual/concurrency.html +++ b/libstdc++-v3/doc/html/manual/concurrency.html @@ -1,6 +1,6 @@ -Chapter 40. Concurrency

    Chapter 40. Concurrency

    Design

    Interface to Locks and Mutexes

    The file <ext/concurrence.h> contains all the higher-level +Chapter 40. Concurrency

    Chapter 40. Concurrency

    Design

    Interface to Locks and Mutexes

    The file <ext/concurrence.h> contains all the higher-level constructs for playing with threads. In contrast to the atomics layer, the concurrence layer consists largely of types. All types are defined within namespace __gnu_cxx.

    diff --git a/libstdc++-v3/doc/html/manual/extensions.html b/libstdc++-v3/doc/html/manual/extensions.html index bbd57bafde9..c4f6ac8bac0 100644 --- a/libstdc++-v3/doc/html/manual/extensions.html +++ b/libstdc++-v3/doc/html/manual/extensions.html @@ -1,3 +1,3 @@ -Part XII. Extensions

    +Part XII. Extensions diff --git a/libstdc++-v3/doc/html/manual/messages.html b/libstdc++-v3/doc/html/manual/messages.html index e59f5d11cbd..e2ca0d229d7 100644 --- a/libstdc++-v3/doc/html/manual/messages.html +++ b/libstdc++-v3/doc/html/manual/messages.html @@ -133,7 +133,7 @@ model. library locale support is necessary for more than just the LC_MESSAGES mask: LC_CTYPE is also necessary. To avoid any unpleasantness, all bits of the "C" mask - (ie LC_ALL) are set before retrieving messages. + (i.e. LC_ALL) are set before retrieving messages.

    Making the message catalogs can be initially tricky, but become quite simple with practice. For complete info, see the gettext @@ -205,7 +205,7 @@ void test01() There are issues with gettext needing the global locale set to extract a message. This dependence on the global locale makes the current "gnu" model non MT-safe. Future versions - of glibc, ie glibc 2.3.x will fix this, and the C++ library + of glibc, i.e. glibc 2.3.x will fix this, and the C++ library bits are already in place.

  • Development versions of the GNU "C" library, glibc 2.3 will allow @@ -218,7 +218,7 @@ void test01() library functionality.

  • At some point in the near future, std::numpunct will probably use - std::messages facilities to implement truename/falename + std::messages facilities to implement truename/falsename correctly. This is currently not done, but entries in libstdc++.pot have already been made for "true" and "false" string literals, so all that remains is the std::numpunct coding and the @@ -241,38 +241,38 @@ void test01() model. As of this writing, it is unknown how to query to see if a specified message catalog exists using the gettext package. -

  • Bibliography

    +

    Bibliography

    The GNU C Library . Roland McGrath. Ulrich Drepper. Copyright © 2007 FSF. Chapters 6 Character Set Handling, and 7 Locales and Internationalization - .

    + .

    Correspondence - . Ulrich Drepper. Copyright © 2002 .

    + . Ulrich Drepper. Copyright © 2002 .

    ISO/IEC 14882:1998 Programming languages - C++ - . Copyright © 1998 ISO.

    + . Copyright © 1998 ISO.

    ISO/IEC 9899:1999 Programming languages - C - . Copyright © 1999 ISO.

    + . Copyright © 1999 ISO.

    System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x) . Copyright © 1999 The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. - .

    + .

    The C++ Programming Language, Special Edition . Bjarne Stroustrup. Copyright © 2000 Addison Wesley, Inc.. Appendix D. Addison Wesley - .

    + .

    Standard C++ IOStreams and Locales . Advanced Programmer's Guide and Reference . Angelika Langer. Klaus Kreft. Copyright © 2000 Addison Wesley Longman, Inc.. Addison Wesley Longman - .

    + .

    Java 2 Platform, Standard Edition, v 1.3.1 API Specification . java.util.Properties, java.text.MessageFormat, java.util.Locale, java.util.ResourceBundle. - .

    + .

    GNU gettext tools, version 0.10.38, Native Language Support Library and Tools. . diff --git a/libstdc++-v3/doc/html/manual/parallel_mode.html b/libstdc++-v3/doc/html/manual/parallel_mode.html index 137d041e749..17c3eadda8e 100644 --- a/libstdc++-v3/doc/html/manual/parallel_mode.html +++ b/libstdc++-v3/doc/html/manual/parallel_mode.html @@ -4,18 +4,17 @@ implementation of many algorithms the C++ Standard Library.

    Several of the standard algorithms, for instance -std::sort, are made parallel using OpenMP +std::sort, are made parallel using OpenMP annotations. These parallel mode constructs and can be invoked by explicit source declaration or by compiling existing sources with a specific compiler flag.

    Intro

    The following library components in the include -<numeric> are included in the parallel mode:

    • std::accumulate

    • std::adjacent_difference

    • std::inner_product

    • std::partial_sum

    The following library components in the include -<algorithm> are included in the parallel mode:

    • std::adjacent_find

    • std::count

    • std::count_if

    • std::equal

    • std::find

    • std::find_if

    • std::find_first_of

    • std::for_each

    • std::generate

    • std::generate_n

    • std::lexicographical_compare

    • std::mismatch

    • std::search

    • std::search_n

    • std::transform

    • std::replace

    • std::replace_if

    • std::max_element

    • std::merge

    • std::min_element

    • std::nth_element

    • std::partial_sort

    • std::partition

    • std::random_shuffle

    • std::set_union

    • std::set_intersection

    • std::set_symmetric_difference

    • std::set_difference

    • std::sort

    • std::stable_sort

    • std::unique_copy

    The following library components in the includes -<set> and <map> are included in the parallel mode:

    • std::(multi_)map/set<T>::(multi_)map/set(Iterator begin, Iterator end) (bulk construction)

    • std::(multi_)map/set<T>::insert(Iterator begin, Iterator end) (bulk insertion)

    Bibliography

    +numeric are included in the parallel mode:

    • std::accumulate

    • std::adjacent_difference

    • std::inner_product

    • std::partial_sum

    The following library components in the include +algorithm are included in the parallel mode:

    • std::adjacent_find

    • std::count

    • std::count_if

    • std::equal

    • std::find

    • std::find_if

    • std::find_first_of

    • std::for_each

    • std::generate

    • std::generate_n

    • std::lexicographical_compare

    • std::mismatch

    • std::search

    • std::search_n

    • std::transform

    • std::replace

    • std::replace_if

    • std::max_element

    • std::merge

    • std::min_element

    • std::nth_element

    • std::partial_sort

    • std::partition

    • std::random_shuffle

    • std::set_union

    • std::set_intersection

    • std::set_symmetric_difference

    • std::set_difference

    • std::sort

    • std::stable_sort

    • std::unique_copy

    Bibliography

    Parallelization of Bulk Operations for STL Dictionaries . Johannes Singler. Leonor Frias. Copyright © 2007 . Workshop on Highly Parallel Processing on a Chip (HPPC) 2007. (LNCS) - .

    + .

    The Multi-Core Standard Template Library . Johannes Singler. Peter Sanders. Felix Putze. Copyright © 2007 . Euro-Par 2007: Parallel Processing. (LNCS 4641) diff --git a/libstdc++-v3/doc/html/manual/shared_ptr.html b/libstdc++-v3/doc/html/manual/shared_ptr.html index 21d38d3e3d6..c5aed380204 100644 --- a/libstdc++-v3/doc/html/manual/shared_ptr.html +++ b/libstdc++-v3/doc/html/manual/shared_ptr.html @@ -29,7 +29,7 @@ drops to zero. Derived classes override those functions to destroy resources in a context where the correct dynamic type is known. This is an application of the technique known as type erasure. -

    Implementation

    Class Hierarchy

    +

    Implementation

    Class Hierarchy

    A shared_ptr<T> contains a pointer of type T* and an object of type __shared_count. The shared_count contains a @@ -71,7 +71,7 @@ be forwarded to Tp's constructor. Unlike the other _Sp_counted_* classes, this one is parameterized on the type of object, not the type of pointer; this is purely a convenience that simplifies the implementation slightly. -

    Thread Safety

    +

    Thread Safety

    The interface of tr1::shared_ptr was extended for C++0x with support for rvalue-references and the other features from N2351. As with other libstdc++ headers shared by TR1 and C++0x, @@ -129,7 +129,7 @@ compiler, standard library, platform etc. For the version of shared_ptr in libstdc++ the compiler and library are fixed, which makes things much simpler: we have an atomic CAS or we don't, see Lock Policy below for details. -

    Selecting Lock Policy

    +

    Selecting Lock Policy

    There is a single _Sp_counted_base class, which is a template parameterized on the enum @@ -170,7 +170,7 @@ used when libstdc++ is built without --enable-threadsext/atomicity.h, which detect if the program is multi-threaded. If only one thread of execution exists in the program then less expensive non-atomic operations are used. -

    Dual C++0x and TR1 Implementation

    +

    Dual C++0x and TR1 Implementation

    The classes derived from _Sp_counted_base (see Class Hierarchy below) and __shared_count are implemented separately for C++0x and TR1, in bits/boost_sp_shared_count.h and @@ -181,7 +181,7 @@ The TR1 implementation is considered relatively stable, so is unlikely to change unless bug fixes require it. If the code that is common to both C++0x and TR1 modes needs to diverge further then it might be necessary to duplicate additional classes and only make changes to the C++0x versions. -

    Related functions and classes

    dynamic_pointer_cast, static_pointer_cast, +

    Related functions and classes

    dynamic_pointer_cast, static_pointer_cast, const_pointer_cast

    As noted in N2351, these functions can be implemented non-intrusively using the alias constructor. However the aliasing constructor is only available @@ -214,10 +214,10 @@ is called. Users should not try to use this. As well as the extra constructors, this implementation also needs some members of _Sp_counted_deleter to be protected where they could otherwise be private. -

    Use

    Examples

    +

    Use

    Examples

    Examples of use can be found in the testsuite, under testsuite/tr1/2_general_utilities/shared_ptr. -

    Unresolved Issues

    +

    Unresolved Issues

    The resolution to C++ Standard Library issue 674, "shared_ptr interface changes for consistency with N1856" will need to be implemented after it is accepted into the working @@ -265,7 +265,7 @@ be private. code to work with, Peter Dimov in particular for his help and invaluable advice on thread safety. Phillip Jordan and Paolo Carlini for the lock policy implementation. -

    Bibliography

    [ +

    Bibliography

    [ n2351 ] Improving shared_ptr for C++0x, Revision 2 @@ -274,7 +274,7 @@ be private. . - .

    [ + .

    [ n2456 ] C++ Standard Library Active Issues List (Revision R52) @@ -283,7 +283,7 @@ be private. . - .

    [ + .

    [ n2461 ] Working Draft, Standard for Programming Language C++ @@ -292,7 +292,7 @@ be private. . - .

    [ + .

    [ boostshared_ptr ] Boost C++ Libraries documentation - shared_ptr class template diff --git a/libstdc++-v3/doc/html/manual/spine.html b/libstdc++-v3/doc/html/manual/spine.html index ba20f193d8e..0a0b3d7f4fe 100644 --- a/libstdc++-v3/doc/html/manual/spine.html +++ b/libstdc++-v3/doc/html/manual/spine.html @@ -2,6 +2,6 @@ The GNU C++ Library

    The GNU C++ Library

    +


    Table of Contents

    I. Introduction
    1. Status
    Implementation Status
    C++ 1998
    C++ TR1
    C++ 200x
    License
    The Code: GPL
    The Documentation: GPL, FDL
    Bugs
    Implementation Bugs
    Standard Bugs
    2. Setup
    Configure
    Build
    Prerequisites
    Make
    Test
    Organization
    Naming Conventions
    Utilities
    Running the Testsuite
    New Test Cases
    Test Harness Details
    Future
    3. Using
    Linking Library Binary Files
    Headers
    Header Files
    Mixing Headers
    The C Headers and namespace std
    Precompiled Headers
    Namespaces
    Available Namespaces
    namespace std
    Using Namespace Composition
    Macros
    Concurrency
    Prerequisites
    Thread Safety
    Atomics
    IO
    Containers
    Exception Safety
    Debugging Support
    Using g++
    Debug Versions of Library Binary Files
    Memory Leak Hunting
    Using gdb
    Tracking uncaught exceptions
    Debug Mode
    Compile Time Checking
    II. Support
    4. Types
    Fundamental Types
    Numeric Properties
    NULL
    5. Dynamic Memory
    6. Termination
    Termination Handlers
    Verbose Terminate Handler
    III. Diagnostics
    7. Exceptions
    Exception Classes
    Adding Data to Exceptions
    Cancellation
    8. Concept Checking
    IV. Utilities
    9. Functors
    10. Pairs
    11. Memory
    Allocators
    Requirements
    Design Issues
    Implementation
    Using a Specific Allocator
    Custom Allocators
    Extension Allocators
    auto_ptr
    Limitations
    Use in Containers
    shared_ptr
    Requirements
    Design Issues
    Implementation
    Use
    Acknowledgments
    12. Traits
    V. Strings
    13. String Classes
    Simple Transformations
    Case Sensivitity
    Arbitrary Character Types
    Tokenizing
    Shrink to Fit
    CString (MFC)
    VI. Localization
    14. Locales
    locale
    Requirements
    Design
    Implementation
    Future
    15. Facets aka Categories
    ctype
    Implementation
    Future
    codecvt
    Requirements
    Design
    Implementation
    Use
    Future
    messages
    Requirements
    Design
    Implementation
    Use
    Future
    VII. Containers
    16. Sequences
    list
    list::size() is O(n)
    vector
    Space Overhead Management
    17. Associative
    Insertion Hints
    bitset
    Size Variable
    Type String
    18. Interacting with C
    Containers vs. Arrays
    VIII. Iterators
    19. Predefined
    Iterators vs. Pointers
    One Past the End
    IX. Algorithms
    20. Mutating
    swap
    Specializations
    X. Numerics
    21. Complex
    complex Processing
    22. Generalized Operations
    23. Interacting with C
    Numerics vs. Arrays
    C99
    XI. Input and Output
    24. Iostream Objects
    25. Stream Buffers
    Derived streambuf Classes
    Buffering
    26. Memory Based Streams
    Compatibility With strstream
    27. File Based Streams
    Copying a File
    Binary Input and Output
    More Binary Input and Output
    28. Interacting with C
    Using FILE* and file descriptors
    Performance
    XII. Extensions
    29. Compile Time Checks
    30. Debug Mode
    Intro
    Semantics
    Using
    Using the Debug Mode
    Using a Specific Debug Container
    Design
    Goals
    Methods
    Other Implementations
    31. Parallel Mode
    Intro
    Semantics
    Using
    Using Parallel Mode
    Using Specific Parallel Components
    Design
    Interface Basics
    Configuration and Tuning
    Implementation Namespaces
    Testing
    Bibliography
    32. Allocators
    mt_allocator
    Intro
    Design Issues
    Implementation
    Single Thread Example
    Multiple Thread Example
    bitmap_allocator
    Design
    Implementation
    33. Containers
    Policy Based Data Structures
    HP/SGI
    Deprecated HP/SGI
    34. Utilities
    35. Algorithms
    36. Numerics
    37. Iterators
    38. Input and Output
    Derived filebufs
    39. Demangling
    40. Concurrency
    Design
    Interface to Locks and Mutexes
    Interface to Atomic Functions
    Implementation
    Using Builitin Atomic Functions
    Thread Abstraction
    Use
    A. Contributing
    Contributor Checklist
    Reading
    Assignment
    Getting Sources
    Submitting Patches
    Directory Layout and Source Conventions
    Coding Style
    Bad Itentifiers
    By Example
    Documentation Style
    Doxygen
    Docbook
    Design Notes
    B. Porting and Maintenance
    Configure and Build Hacking
    Prerequisites
    Overview: What Comes from Where
    Storing Information in non-AC files (like configure.host)
    Coding and Commenting Conventions
    The acinclude.m4 layout
    GLIBCXX_ENABLE, the --enable maker
    Porting to New Hardware or Operating Systems
    Operating System
    CPU
    Character Types
    Thread Safety
    Numeric Limits
    Libtool
    ABI Policy and Guidelines
    The C++ Interface
    Versioning
    Allowed Changes
    Prohibited Changes
    Implementation
    Testing
    Outstanding Issues
    API Evolution and Deprecation History
    3.0
    3.1
    3.2
    3.3
    3.4
    4.0
    4.1
    4.2
    4.3
    Backwards Compatibility
    First
    Second
    Third
    C. Free Software Needs Free Documentation
    D. GNU General Public License
    Preamble
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
    Section 0
    Section 1
    Section 2
    Section 3
    Section 4
    Section 5
    Section 6
    Section 7
    Section 8
    Section 9
    Section 10
    NO WARRANTY Section 11
    Section 12
    How to Apply These Terms to Your New Programs
    E. GNU Free Documentation License
    +


    Table of Contents

    I. Introduction
    1. Status
    Implementation Status
    C++ 1998
    C++ TR1
    C++ 200x
    License
    The Code: GPL
    The Documentation: GPL, FDL
    Bugs
    Implementation Bugs
    Standard Bugs
    2. Setup
    Configure
    Build
    Prerequisites
    Make
    Test
    Organization
    Naming Conventions
    Utilities
    Running the Testsuite
    New Test Cases
    Test Harness Details
    Future
    3. Using
    Linking Library Binary Files
    Headers
    Header Files
    Mixing Headers
    The C Headers and namespace std
    Precompiled Headers
    Namespaces
    Available Namespaces
    namespace std
    Using Namespace Composition
    Macros
    Concurrency
    Prerequisites
    Thread Safety
    Atomics
    IO
    Containers
    Exception Safety
    Debugging Support
    Using g++
    Debug Versions of Library Binary Files
    Memory Leak Hunting
    Using gdb
    Tracking uncaught exceptions
    Debug Mode
    Compile Time Checking
    II. Support
    4. Types
    Fundamental Types
    Numeric Properties
    NULL
    5. Dynamic Memory
    6. Termination
    Termination Handlers
    Verbose Terminate Handler
    III. Diagnostics
    7. Exceptions
    Exception Classes
    Adding Data to Exceptions
    Cancellation
    8. Concept Checking
    IV. Utilities
    9. Functors
    10. Pairs
    11. Memory
    Allocators
    Requirements
    Design Issues
    Implementation
    Using a Specific Allocator
    Custom Allocators
    Extension Allocators
    auto_ptr
    Limitations
    Use in Containers
    shared_ptr
    Requirements
    Design Issues
    Implementation
    Use
    Acknowledgments
    12. Traits
    V. Strings
    13. String Classes
    Simple Transformations
    Case Sensitivity
    Arbitrary Character Types
    Tokenizing
    Shrink to Fit
    CString (MFC)
    VI. Localization
    14. Locales
    locale
    Requirements
    Design
    Implementation
    Future
    15. Facets aka Categories
    ctype
    Implementation
    Future
    codecvt
    Requirements
    Design
    Implementation
    Use
    Future
    messages
    Requirements
    Design
    Implementation
    Use
    Future
    VII. Containers
    16. Sequences
    list
    list::size() is O(n)
    vector
    Space Overhead Management
    17. Associative
    Insertion Hints
    bitset
    Size Variable
    Type String
    18. Interacting with C
    Containers vs. Arrays
    VIII. Iterators
    19. Predefined
    Iterators vs. Pointers
    One Past the End
    IX. Algorithms
    20. Mutating
    swap
    Specializations
    X. Numerics
    21. Complex
    complex Processing
    22. Generalized Operations
    23. Interacting with C
    Numerics vs. Arrays
    C99
    XI. Input and Output
    24. Iostream Objects
    25. Stream Buffers
    Derived streambuf Classes
    Buffering
    26. Memory Based Streams
    Compatibility With strstream
    27. File Based Streams
    Copying a File
    Binary Input and Output
    More Binary Input and Output
    28. Interacting with C
    Using FILE* and file descriptors
    Performance
    XII. Extensions
    29. Compile Time Checks
    30. Debug Mode
    Intro
    Semantics
    Using
    Using the Debug Mode
    Using a Specific Debug Container
    Design
    Goals
    Methods
    Other Implementations
    31. Parallel Mode
    Intro
    Semantics
    Using
    Using Parallel Mode
    Using Specific Parallel Components
    Design
    Interface Basics
    Configuration and Tuning
    Implementation Namespaces
    Testing
    Bibliography
    32. Allocators
    mt_allocator
    Intro
    Design Issues
    Implementation
    Single Thread Example
    Multiple Thread Example
    bitmap_allocator
    Design
    Implementation
    33. Containers
    Policy Based Data Structures
    HP/SGI
    Deprecated HP/SGI
    34. Utilities
    35. Algorithms
    36. Numerics
    37. Iterators
    38. Input and Output
    Derived filebufs
    39. Demangling
    40. Concurrency
    Design
    Interface to Locks and Mutexes
    Interface to Atomic Functions
    Implementation
    Using Builtin Atomic Functions
    Thread Abstraction
    Use
    A. Contributing
    Contributor Checklist
    Reading
    Assignment
    Getting Sources
    Submitting Patches
    Directory Layout and Source Conventions
    Coding Style
    Bad Identifiers
    By Example
    Documentation Style
    Doxygen
    Docbook
    Design Notes
    B. Porting and Maintenance
    Configure and Build Hacking
    Prerequisites
    Overview: What Comes from Where
    Storing Information in non-AC files (like configure.host)
    Coding and Commenting Conventions
    The acinclude.m4 layout
    GLIBCXX_ENABLE, the --enable maker
    Porting to New Hardware or Operating Systems
    Operating System
    CPU
    Character Types
    Thread Safety
    Numeric Limits
    Libtool
    ABI Policy and Guidelines
    The C++ Interface
    Versioning
    Allowed Changes
    Prohibited Changes
    Implementation
    Testing
    Outstanding Issues
    API Evolution and Deprecation History
    3.0
    3.1
    3.2
    3.3
    3.4
    4.0
    4.1
    4.2
    4.3
    Backwards Compatibility
    First
    Second
    Third
    C. Free Software Needs Free Documentation
    D. GNU General Public License
    Preamble
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
    Section 0
    Section 1
    Section 2
    Section 3
    Section 4
    Section 5
    Section 6
    Section 7
    Section 8
    Section 9
    Section 10
    NO WARRANTY Section 11
    Section 12
    How to Apply These Terms to Your New Programs
    E. GNU Free Documentation License
    diff --git a/libstdc++-v3/doc/html/manual/strings.html b/libstdc++-v3/doc/html/manual/strings.html index 99d8cbed0e3..0b0617fdd79 100644 --- a/libstdc++-v3/doc/html/manual/strings.html +++ b/libstdc++-v3/doc/html/manual/strings.html @@ -1,3 +1,3 @@ -Part V. Strings +Part V. Strings diff --git a/libstdc++-v3/doc/html/manual/test.html b/libstdc++-v3/doc/html/manual/test.html index 6e3e3718f1b..140e0631ffc 100644 --- a/libstdc++-v3/doc/html/manual/test.html +++ b/libstdc++-v3/doc/html/manual/test.html @@ -293,7 +293,7 @@ runtest --tool libstdc++ --srcdir=/path/to/gcc/libstdc++-v3/testsuite testsuite_thread

    This file indicates that the host system can run tests which - incolved multiple threads. + involved multiple threads.

  • testsuite_wchar_t

    @@ -324,7 +324,7 @@ runtest --tool libstdc++ --srcdir=/path/to/gcc/libstdc++-v3/testsuite flux.

    We are interested in any strange failures of the testsuite; - please email the main libstdc++ mainling list if you see + please email the main libstdc++ mailing list if you see something odd or have questions.

    Test Permutations

    To run the libstdc++ test suite under the debug mode, edit diff --git a/libstdc++-v3/doc/html/spine.html b/libstdc++-v3/doc/html/spine.html index 12840aaa909..e6812dab59e 100644 --- a/libstdc++-v3/doc/html/spine.html +++ b/libstdc++-v3/doc/html/spine.html @@ -2,4 +2,4 @@ The GNU C++ Library Documentation

    The GNU C++ Library Documentation

    Paolo Carlini

    Phil Edwards

    Doug Gregor

    Benjamin Kosnik

    Dhruv Matani

    Jason Merrill

    Mark Mitchell

    Nathan Myers

    Felix Natter

    Stefan Olsson

    Johannes Singler

    Ami Tavory

    Jonathan Wakely


    Table of Contents

    The GNU C++ Library
    I. Introduction
    1. Status
    Implementation Status
    C++ 1998
    C++ TR1
    C++ 200x
    License
    The Code: GPL
    The Documentation: GPL, FDL
    Bugs
    Implementation Bugs
    Standard Bugs
    2. Setup
    Configure
    Build
    Prerequisites
    Make
    Test
    Organization
    Naming Conventions
    Utilities
    Running the Testsuite
    New Test Cases
    Test Harness Details
    Future
    3. Using
    Linking Library Binary Files
    Headers
    Header Files
    Mixing Headers
    The C Headers and namespace std
    Precompiled Headers
    Namespaces
    Available Namespaces
    namespace std
    Using Namespace Composition
    Macros
    Concurrency
    Prerequisites
    Thread Safety
    Atomics
    IO
    Containers
    Exception Safety
    Debugging Support
    Using g++
    Debug Versions of Library Binary Files
    Memory Leak Hunting
    Using gdb
    Tracking uncaught exceptions
    Debug Mode
    Compile Time Checking
    II. Support
    4. Types
    Fundamental Types
    Numeric Properties
    NULL
    5. Dynamic Memory
    6. Termination
    Termination Handlers
    Verbose Terminate Handler
    III. Diagnostics
    7. Exceptions
    Exception Classes
    Adding Data to Exceptions
    Cancellation
    8. Concept Checking
    IV. Utilities
    9. Functors
    10. Pairs
    11. Memory
    Allocators
    Requirements
    Design Issues
    Implementation
    Using a Specific Allocator
    Custom Allocators
    Extension Allocators
    auto_ptr
    Limitations
    Use in Containers
    shared_ptr
    Requirements
    Design Issues
    Implementation
    Use
    Acknowledgments
    12. Traits
    V. Strings
    13. String Classes
    Simple Transformations
    Case Sensivitity
    Arbitrary Character Types
    Tokenizing
    Shrink to Fit
    CString (MFC)
    VI. Localization
    14. Locales
    locale
    Requirements
    Design
    Implementation
    Future
    15. Facets aka Categories
    ctype
    Implementation
    Future
    codecvt
    Requirements
    Design
    Implementation
    Use
    Future
    messages
    Requirements
    Design
    Implementation
    Use
    Future
    VII. Containers
    16. Sequences
    list
    list::size() is O(n)
    vector
    Space Overhead Management
    17. Associative
    Insertion Hints
    bitset
    Size Variable
    Type String
    18. Interacting with C
    Containers vs. Arrays
    VIII. Iterators
    19. Predefined
    Iterators vs. Pointers
    One Past the End
    IX. Algorithms
    20. Mutating
    swap
    Specializations
    X. Numerics
    21. Complex
    complex Processing
    22. Generalized Operations
    23. Interacting with C
    Numerics vs. Arrays
    C99
    XI. Input and Output
    24. Iostream Objects
    25. Stream Buffers
    Derived streambuf Classes
    Buffering
    26. Memory Based Streams
    Compatibility With strstream
    27. File Based Streams
    Copying a File
    Binary Input and Output
    More Binary Input and Output
    28. Interacting with C
    Using FILE* and file descriptors
    Performance
    XII. Extensions
    29. Compile Time Checks
    30. Debug Mode
    Intro
    Semantics
    Using
    Using the Debug Mode
    Using a Specific Debug Container
    Design
    Goals
    Methods
    Other Implementations
    31. Parallel Mode
    Intro
    Semantics
    Using
    Using Parallel Mode
    Using Specific Parallel Components
    Design
    Interface Basics
    Configuration and Tuning
    Implementation Namespaces
    Testing
    Bibliography
    32. Allocators
    mt_allocator
    Intro
    Design Issues
    Implementation
    Single Thread Example
    Multiple Thread Example
    bitmap_allocator
    Design
    Implementation
    33. Containers
    Policy Based Data Structures
    HP/SGI
    Deprecated HP/SGI
    34. Utilities
    35. Algorithms
    36. Numerics
    37. Iterators
    38. Input and Output
    Derived filebufs
    39. Demangling
    40. Concurrency
    Design
    Interface to Locks and Mutexes
    Interface to Atomic Functions
    Implementation
    Using Builitin Atomic Functions
    Thread Abstraction
    Use
    A. Contributing
    Contributor Checklist
    Reading
    Assignment
    Getting Sources
    Submitting Patches
    Directory Layout and Source Conventions
    Coding Style
    Bad Itentifiers
    By Example
    Documentation Style
    Doxygen
    Docbook
    Design Notes
    B. Porting and Maintenance
    Configure and Build Hacking
    Prerequisites
    Overview: What Comes from Where
    Storing Information in non-AC files (like configure.host)
    Coding and Commenting Conventions
    The acinclude.m4 layout
    GLIBCXX_ENABLE, the --enable maker
    Porting to New Hardware or Operating Systems
    Operating System
    CPU
    Character Types
    Thread Safety
    Numeric Limits
    Libtool
    ABI Policy and Guidelines
    The C++ Interface
    Versioning
    Allowed Changes
    Prohibited Changes
    Implementation
    Testing
    Outstanding Issues
    API Evolution and Deprecation History
    3.0
    3.1
    3.2
    3.3
    3.4
    4.0
    4.1
    4.2
    4.3
    Backwards Compatibility
    First
    Second
    Third
    C. Free Software Needs Free Documentation
    D. GNU General Public License
    Preamble
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
    Section 0
    Section 1
    Section 2
    Section 3
    Section 4
    Section 5
    Section 6
    Section 7
    Section 8
    Section 9
    Section 10
    NO WARRANTY Section 11
    Section 12
    How to Apply These Terms to Your New Programs
    E. GNU Free Documentation License
    API and Source Level Documentation
    Frequently Asked Questions
    +


    Table of Contents

    The GNU C++ Library
    I. Introduction
    1. Status
    Implementation Status
    C++ 1998
    C++ TR1
    C++ 200x
    License
    The Code: GPL
    The Documentation: GPL, FDL
    Bugs
    Implementation Bugs
    Standard Bugs
    2. Setup
    Configure
    Build
    Prerequisites
    Make
    Test
    Organization
    Naming Conventions
    Utilities
    Running the Testsuite
    New Test Cases
    Test Harness Details
    Future
    3. Using
    Linking Library Binary Files
    Headers
    Header Files
    Mixing Headers
    The C Headers and namespace std
    Precompiled Headers
    Namespaces
    Available Namespaces
    namespace std
    Using Namespace Composition
    Macros
    Concurrency
    Prerequisites
    Thread Safety
    Atomics
    IO
    Containers
    Exception Safety
    Debugging Support
    Using g++
    Debug Versions of Library Binary Files
    Memory Leak Hunting
    Using gdb
    Tracking uncaught exceptions
    Debug Mode
    Compile Time Checking
    II. Support
    4. Types
    Fundamental Types
    Numeric Properties
    NULL
    5. Dynamic Memory
    6. Termination
    Termination Handlers
    Verbose Terminate Handler
    III. Diagnostics
    7. Exceptions
    Exception Classes
    Adding Data to Exceptions
    Cancellation
    8. Concept Checking
    IV. Utilities
    9. Functors
    10. Pairs
    11. Memory
    Allocators
    Requirements
    Design Issues
    Implementation
    Using a Specific Allocator
    Custom Allocators
    Extension Allocators
    auto_ptr
    Limitations
    Use in Containers
    shared_ptr
    Requirements
    Design Issues
    Implementation
    Use
    Acknowledgments
    12. Traits
    V. Strings
    13. String Classes
    Simple Transformations
    Case Sensitivity
    Arbitrary Character Types
    Tokenizing
    Shrink to Fit
    CString (MFC)
    VI. Localization
    14. Locales
    locale
    Requirements
    Design
    Implementation
    Future
    15. Facets aka Categories
    ctype
    Implementation
    Future
    codecvt
    Requirements
    Design
    Implementation
    Use
    Future
    messages
    Requirements
    Design
    Implementation
    Use
    Future
    VII. Containers
    16. Sequences
    list
    list::size() is O(n)
    vector
    Space Overhead Management
    17. Associative
    Insertion Hints
    bitset
    Size Variable
    Type String
    18. Interacting with C
    Containers vs. Arrays
    VIII. Iterators
    19. Predefined
    Iterators vs. Pointers
    One Past the End
    IX. Algorithms
    20. Mutating
    swap
    Specializations
    X. Numerics
    21. Complex
    complex Processing
    22. Generalized Operations
    23. Interacting with C
    Numerics vs. Arrays
    C99
    XI. Input and Output
    24. Iostream Objects
    25. Stream Buffers
    Derived streambuf Classes
    Buffering
    26. Memory Based Streams
    Compatibility With strstream
    27. File Based Streams
    Copying a File
    Binary Input and Output
    More Binary Input and Output
    28. Interacting with C
    Using FILE* and file descriptors
    Performance
    XII. Extensions
    29. Compile Time Checks
    30. Debug Mode
    Intro
    Semantics
    Using
    Using the Debug Mode
    Using a Specific Debug Container
    Design
    Goals
    Methods
    Other Implementations
    31. Parallel Mode
    Intro
    Semantics
    Using
    Using Parallel Mode
    Using Specific Parallel Components
    Design
    Interface Basics
    Configuration and Tuning
    Implementation Namespaces
    Testing
    Bibliography
    32. Allocators
    mt_allocator
    Intro
    Design Issues
    Implementation
    Single Thread Example
    Multiple Thread Example
    bitmap_allocator
    Design
    Implementation
    33. Containers
    Policy Based Data Structures
    HP/SGI
    Deprecated HP/SGI
    34. Utilities
    35. Algorithms
    36. Numerics
    37. Iterators
    38. Input and Output
    Derived filebufs
    39. Demangling
    40. Concurrency
    Design
    Interface to Locks and Mutexes
    Interface to Atomic Functions
    Implementation
    Using Builtin Atomic Functions
    Thread Abstraction
    Use
    A. Contributing
    Contributor Checklist
    Reading
    Assignment
    Getting Sources
    Submitting Patches
    Directory Layout and Source Conventions
    Coding Style
    Bad Identifiers
    By Example
    Documentation Style
    Doxygen
    Docbook
    Design Notes
    B. Porting and Maintenance
    Configure and Build Hacking
    Prerequisites
    Overview: What Comes from Where
    Storing Information in non-AC files (like configure.host)
    Coding and Commenting Conventions
    The acinclude.m4 layout
    GLIBCXX_ENABLE, the --enable maker
    Porting to New Hardware or Operating Systems
    Operating System
    CPU
    Character Types
    Thread Safety
    Numeric Limits
    Libtool
    ABI Policy and Guidelines
    The C++ Interface
    Versioning
    Allowed Changes
    Prohibited Changes
    Implementation
    Testing
    Outstanding Issues
    API Evolution and Deprecation History
    3.0
    3.1
    3.2
    3.3
    3.4
    4.0
    4.1
    4.2
    4.3
    Backwards Compatibility
    First
    Second
    Third
    C. Free Software Needs Free Documentation
    D. GNU General Public License
    Preamble
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
    Section 0
    Section 1
    Section 2
    Section 3
    Section 4
    Section 5
    Section 6
    Section 7
    Section 8
    Section 9
    Section 10
    NO WARRANTY Section 11
    Section 12
    How to Apply These Terms to Your New Programs
    E. GNU Free Documentation License
    API and Source Level Documentation
    Frequently Asked Questions
    diff --git a/libstdc++-v3/doc/xml/authors.xml b/libstdc++-v3/doc/xml/authors.xml index dfcdf24d1b9..83795ba076b 100644 --- a/libstdc++-v3/doc/xml/authors.xml +++ b/libstdc++-v3/doc/xml/authors.xml @@ -154,7 +154,7 @@ - Policy Based Datastructures, Associative Containers, Unordered + Policy Based Data Structures, Associative Containers, Unordered Containers. diff --git a/libstdc++-v3/doc/xml/faq.xml b/libstdc++-v3/doc/xml/faq.xml index a60bee3e287..6d1feedb698 100644 --- a/libstdc++-v3/doc/xml/faq.xml +++ b/libstdc++-v3/doc/xml/faq.xml @@ -461,7 +461,7 @@ - + Platform-Specific Issues @@ -661,7 +661,7 @@ enough to detect when the minimal support to enable wchar_t and C++ library structures like wstring were present. This impacted Solaris, - Darwin, and BSD varients, and is fixed in libstdc++ versions post 4.1.0. + Darwin, and BSD variants, and is fixed in libstdc++ versions post 4.1.0. @@ -1098,7 +1098,7 @@ - See the link on backwards compatiblity and link on evolution. + See the link on backwards compatibility and link on evolution. @@ -1251,4 +1251,4 @@ - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/abi.xml b/libstdc++-v3/doc/xml/manual/abi.xml index c11da9507db..aef14719c04 100644 --- a/libstdc++-v3/doc/xml/manual/abi.xml +++ b/libstdc++-v3/doc/xml/manual/abi.xml @@ -99,7 +99,7 @@ given compiler ABI. In a nutshell: To use a specific version of the C++ ABI, one must use a - corresponding GNU C++ toolchain (Ie, g++ and libstdc++) that + corresponding GNU C++ toolchain (i.e., g++ and libstdc++) that implements the C++ ABI in question. @@ -183,7 +183,7 @@ release of the series to remain link compatible. It is versioned with the following labels and version definitions, where the version definition is the maximum for a particular release. Labels are cumulative. If a particular release - is not listed, it has the same version labels as the preceeding + is not listed, it has the same version labels as the preceding release. This corresponds to the mapfile: gcc/libgcc-std.ver @@ -252,7 +252,7 @@ release of the series to remain link compatible. gcc-3.2.1 release, which has GLIBCPP_3.2.1 for new symbols and GLIBCPP_3.2 for symbols that were introduced in the gcc-3.2.0 release.) If a particular release is not listed, it has the same - version labels as the preceeding release. + version labels as the preceding release. gcc-3.0.0: (Error, not versioned) @@ -737,7 +737,7 @@ class in registers, the compiler will be forced to use memory. See - Bad Itentifiers + Bad Identifiers Identifiers that conflict and should be avoided. @@ -653,7 +653,7 @@ indicate a place that may require attention for multi-thread safety. for definitions. For C++, where we have member functions that can be either inline definitions or declarations, keeping to this standard allows all member function names for a given class to be - aligned to the same margin, increasing readibility. + aligned to the same margin, increasing readability. 10. Invocation of member functions with "this->" @@ -679,7 +679,7 @@ indicate a place that may require attention for multi-thread safety. 12. Spacing under protected and private in class declarations: space above, none below - ie + i.e. public: int foo; @@ -691,7 +691,7 @@ indicate a place that may require attention for multi-thread safety. 13. Spacing WRT return statements. no extra spacing before returns, no parenthesis - ie + i.e. } return __ret; @@ -708,7 +708,7 @@ indicate a place that may require attention for multi-thread safety. 14. Location of global variables. - All global variables of class type, whether in the "user visable" + All global variables of class type, whether in the "user visible" space (e.g., cin) or the implementation namespace, must be defined as a character array with the appropriate alignment and then later re-initialized to the correct value. @@ -1055,7 +1055,7 @@ indicate a place that may require attention for multi-thread safety. Prerequisites Editing the DocBook sources requires an XML editor. Many - exist: some noteable options + exist: some notable options include emacs, Kate, or Conglomerate. @@ -1083,7 +1083,7 @@ indicate a place that may require attention for multi-thread safety. - For procesessing XML, an XML processor and some style + For processing XML, an XML processor and some style sheets are necessary. Defaults are xsltproc provided by libxslt. @@ -1163,10 +1163,10 @@ xmllint --noout --valid xml/index.xml faq.xml - index to FAQ api.xml - index to source level / API - All *.txml files are template xml files, ie otherwise empty files with + All *.txml files are template xml files, i.e., otherwise empty files with the correct structure, suitable for filling in with new information. - Cannonical Writing Style + Canonical Writing Style class template function template @@ -1496,7 +1496,7 @@ xmllint --noout --valid xml/index.xml "export") is badly needed. When building a shared library, the current compiler/linker cannot - automatically generate the instantiatiations needed. This creates a + automatically generate the instantiations needed. This creates a miserable situation; it means any time something is changed in the library, before a shared library can be built someone must manually copy the declarations of all templates that are needed by other parts @@ -2100,7 +2100,7 @@ xmllint --noout --valid xml/index.xml by filebuf. These wrappings have not been completed, though there is scaffolding in place. - The encapulation of certain C header <cstdio> names presents an + The encapsulation of certain C header <cstdio> names presents an interesting problem. It is possible to define an inline std::fprintf() implemented in terms of the 'extern "C"' vfprintf(), but there is no standard vfscanf() to use to implement std::fscanf(). It appears that diff --git a/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml b/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml index 49a0ca813b6..42a64aa98c9 100644 --- a/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml +++ b/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml @@ -148,7 +148,7 @@ considered replaced and rewritten. then using that to set a value for the NAMESPACE_STD macro. At that point, one is able to use NAMESPACE_STD::string, which will evaluate to - std::string or ::string (ie, in the + std::string or ::string (i.e., in the global namespace on systems that do not put string in std::). @@ -346,7 +346,7 @@ erase(size_type __pos = 0, size_type __n = npos) - Unfortunately, ut clear is not implemented in this + Unfortunately, clear is not implemented in this version, so you should use erase (which is probably faster than operator=(charT*)). @@ -815,7 +815,7 @@ No stream::attach(int fd) For a portable solution (among systems which use - filedescriptors), you need to implement a subclass of + file descriptors), you need to implement a subclass of std::streambuf (or std::basic_streambuf<..>) which opens a file given a descriptor, and then pass an instance of this to the @@ -1312,4 +1312,4 @@ AC_DEFUN([AC_HEADER_UNORDERED_SET], [ - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml b/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml index e05fc16c56a..1815a39c4c0 100644 --- a/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml +++ b/libstdc++-v3/doc/xml/manual/bitmap_allocator.xml @@ -240,8 +240,8 @@ else return false. - Where, k => The constant overhead per node. eg. for list, it is - 8 bytes, and for map it is 12 bytes. c => The size of the + where k is the constant overhead per node (e.g., for list, it is + 8 bytes, and for map it is 12 bytes) and c is the size of the base type on which the map/list is instantiated. Thus, suppose the type1 is int and type2 is double, they are related by the relation sizeof(double) == 2*sizeof(int). Thus, all types must have this @@ -556,4 +556,4 @@ equivalent. - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/build_hacking.xml b/libstdc++-v3/doc/xml/manual/build_hacking.xml index b420f4f0706..3f47e654fbc 100644 --- a/libstdc++-v3/doc/xml/manual/build_hacking.xml +++ b/libstdc++-v3/doc/xml/manual/build_hacking.xml @@ -104,7 +104,7 @@ Most comments should use {octothorpes, shibboleths, hash marks, - pound signs, whatevers} rather than "dnl". Nearly all comments in + pound signs, whatever} rather than "dnl". Nearly all comments in configure.ac should. Comments inside macros written in ancilliary .m4 files should. About the only comments which should not use #, but use dnl instead, are comments @@ -351,4 +351,4 @@ - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/codecvt.xml b/libstdc++-v3/doc/xml/manual/codecvt.xml index 4c14d6253f0..c836f9d0a53 100644 --- a/libstdc++-v3/doc/xml/manual/codecvt.xml +++ b/libstdc++-v3/doc/xml/manual/codecvt.xml @@ -190,7 +190,7 @@ UTF-16, UTF8, UTF16). For iconv-based implementations, string literals for each of the -encodings (ie. "UCS-2" and "UTF-8") are necessary, +encodings (i.e. "UCS-2" and "UTF-8") are necessary, although for other, non-iconv implementations a table of enumerated values or some other mechanism may be required. @@ -218,7 +218,7 @@ mechanism may be required. - Conversion descriptors for both directions of encoding. (ie, both + Conversion descriptors for both directions of encoding. (i.e., both UCS-2 to UTF-8 and UTF-8 to UCS-2.) @@ -301,7 +301,7 @@ codecvt<char, char, mbstate_t>
    -This is a degenerate (ie, does nothing) specialization. Implementing +This is a degenerate (i.e., does nothing) specialization. Implementing this was a piece of cake. @@ -727,4 +727,4 @@ codecvt usage. - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/concurrency.xml b/libstdc++-v3/doc/xml/manual/concurrency.xml index 5740e424373..b21d458e96c 100644 --- a/libstdc++-v3/doc/xml/manual/concurrency.xml +++ b/libstdc++-v3/doc/xml/manual/concurrency.xml @@ -194,7 +194,7 @@ host hardware and operating system. Implementation - Using Builitin Atomic Functions + Using Builtin Atomic Functions The functions for atomic operations described above are either implemented via compiler intrinsics (if the underlying host is @@ -261,7 +261,7 @@ hardware, hand-crafted assembly is selected. This is the case for the following Thread Abstraction -A thin layer above IEEE 1003.1 (ie pthreads) is used to abstract +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 comprised of one header file that wraps the host's default thread layer with a POSIX-like interface. diff --git a/libstdc++-v3/doc/xml/manual/ctype.xml b/libstdc++-v3/doc/xml/manual/ctype.xml index 8ecd7b9c3d2..58f08fbdb68 100644 --- a/libstdc++-v3/doc/xml/manual/ctype.xml +++ b/libstdc++-v3/doc/xml/manual/ctype.xml @@ -99,7 +99,7 @@ characters. Get the ctype<wchar_t>::mask stuff under control. Need to - make some kind of static table, and not do lookup evertime + make some kind of static table, and not do lookup every time somebody hits the do_is... functions. Too bad we can't just redefine mask for ctype<wchar_t> @@ -256,4 +256,4 @@ characters. - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/debug_mode.xml b/libstdc++-v3/doc/xml/manual/debug_mode.xml index e5f3becd590..223abcf9ae8 100644 --- a/libstdc++-v3/doc/xml/manual/debug_mode.xml +++ b/libstdc++-v3/doc/xml/manual/debug_mode.xml @@ -582,7 +582,7 @@ template<typename _Tp, typename _Allocator = allocator<_Tp> allows release-compiled and debug-compiled code to be linked and executed together without causing unpredictable behavior. This guarantee minimizes the recompilation that users are required to - perform, shortening the detect-compile-debug bughunting cycle + perform, shortening the detect-compile-debug bug hunting cycle and making the debug mode easier to incorporate into development environments by minimizing dependencies. diff --git a/libstdc++-v3/doc/xml/manual/diagnostics.xml b/libstdc++-v3/doc/xml/manual/diagnostics.xml index f43614c861e..bb6ef4d7085 100644 --- a/libstdc++-v3/doc/xml/manual/diagnostics.xml +++ b/libstdc++-v3/doc/xml/manual/diagnostics.xml @@ -39,7 +39,7 @@ Derived from this are several classes that may have a - string member: a full heirarchy can be + string member: a full hierarchy can be found in the source documentation. diff --git a/libstdc++-v3/doc/xml/manual/evolution.xml b/libstdc++-v3/doc/xml/manual/evolution.xml index 296e228311a..19734312fae 100644 --- a/libstdc++-v3/doc/xml/manual/evolution.xml +++ b/libstdc++-v3/doc/xml/manual/evolution.xml @@ -14,7 +14,7 @@ API Evolution and Deprecation History -A list of user-visible changes, in cronological order +A list of user-visible changes, in chronological order @@ -135,7 +135,7 @@ _Alloc_traits have been removed. Previous versions prior to 3.4 cache allocations in a memory pool, instead of passing through to call the global allocation - operators (ie, __gnu_cxx::pool_allocator). More + operators (i.e., __gnu_cxx::pool_allocator). More recent versions default to the simpler __gnu_cxx::new_allocator. @@ -449,4 +449,4 @@ Namespace pb_ds moved to __gnu_pb_ds. - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/extensions.xml b/libstdc++-v3/doc/xml/manual/extensions.xml index 517d3bba39f..52cebab2ca1 100644 --- a/libstdc++-v3/doc/xml/manual/extensions.xml +++ b/libstdc++-v3/doc/xml/manual/extensions.xml @@ -357,7 +357,7 @@ get_temporary_buffer(5, (int*)0); is_sorted tests whether or not a range is sorted in nondescending order. -25.3.8 (lexigraphical_compare) is extended with +25.3.8 (lexicographical_compare) is extended with lexicographical_compare_3way(_InputIter1 first1, _InputIter1 last1, @@ -488,7 +488,7 @@ get_temporary_buffer(5, (int*)0); Demangling - Transforming C++ ABI itentifiers (like RTTI symbols) into the + Transforming C++ ABI identifiers (like RTTI symbols) into the original C++ source identifiers is called demangling. diff --git a/libstdc++-v3/doc/xml/manual/locale.xml b/libstdc++-v3/doc/xml/manual/locale.xml index a4f20bd974c..b77fdfcaafb 100644 --- a/libstdc++-v3/doc/xml/manual/locale.xml +++ b/libstdc++-v3/doc/xml/manual/locale.xml @@ -50,7 +50,7 @@ Literally, a facet is strictly defined: - Dontaining the following public data member: + Containing the following public data member: static locale::id id; @@ -95,13 +95,13 @@ Provides an index for looking up specific facets. The major design challenge is fitting an object-orientated and -non-global locale design ontop of POSIX and other relevant stanards, +non-global locale design on top of POSIX and other relevant standards, which include the Single Unix (nee X/Open.) Because C and earlier versions of POSIX falls down so completely, -portibility is an issue. +portability is an issue. @@ -461,7 +461,7 @@ global locale" (emphasis Paolo), that is: std::setlocale(LC_ALL, ""); - On the other hand, there is *no* viceversa, that is, calling + On the other hand, there is *no* vice versa, that is, calling setlocale has *no* whatsoever on the C++ locale mechanism, in particular on the working of locale(""), which constructs the locale object from the environment of the running program, that is, in @@ -486,7 +486,7 @@ global locale" (emphasis Paolo), that is: Document how named locales error check when filling data - members. Ie, a fr_FR locale that doesn't have + members. I.e., a fr_FR locale that doesn't have numpunct::truename(): does it use "true"? Or is it a blank string? What's the convention? @@ -504,7 +504,7 @@ global locale" (emphasis Paolo), that is: What should non-required facet instantiations do? If the - generic implemenation is provided, then how to end-users + generic implementation is provided, then how to end-users provide specializations? @@ -650,4 +650,4 @@ global locale" (emphasis Paolo), that is: - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/messages.xml b/libstdc++-v3/doc/xml/manual/messages.xml index d32620fb3ad..dcb504a35d8 100644 --- a/libstdc++-v3/doc/xml/manual/messages.xml +++ b/libstdc++-v3/doc/xml/manual/messages.xml @@ -238,7 +238,7 @@ model. library locale support is necessary for more than just the LC_MESSAGES mask: LC_CTYPE is also necessary. To avoid any unpleasantness, all bits of the "C" mask - (ie LC_ALL) are set before retrieving messages. + (i.e. LC_ALL) are set before retrieving messages. @@ -377,7 +377,7 @@ void test01() There are issues with gettext needing the global locale set to extract a message. This dependence on the global locale makes the current "gnu" model non MT-safe. Future versions - of glibc, ie glibc 2.3.x will fix this, and the C++ library + of glibc, i.e. glibc 2.3.x will fix this, and the C++ library bits are already in place. @@ -399,7 +399,7 @@ void test01() At some point in the near future, std::numpunct will probably use - std::messages facilities to implement truename/falename + std::messages facilities to implement truename/falsename correctly. This is currently not done, but entries in libstdc++.pot have already been made for "true" and "false" string literals, so all that remains is the std::numpunct coding and the @@ -601,4 +601,4 @@ Library and Tools. - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/parallel_mode.xml b/libstdc++-v3/doc/xml/manual/parallel_mode.xml index 449cbda29b6..79577487bd9 100644 --- a/libstdc++-v3/doc/xml/manual/parallel_mode.xml +++ b/libstdc++-v3/doc/xml/manual/parallel_mode.xml @@ -83,20 +83,13 @@ specific compiler flag. std::unique_copy -The following library components in the includes -set and map are included in the parallel mode: - - std::(multi_)map/set<T>::(multi_)map/set(Iterator begin, Iterator end) (bulk construction) - std::(multi_)map/set<T>::insert(Iterator begin, Iterator end) (bulk insertion) - - Semantics The parallel mode STL algorithms are currently not exception-safe, -i. e. user-defined functors must not throw exceptions. +i.e. user-defined functors must not throw exceptions. Since the current GCC OpenMP implementation does not support @@ -455,10 +448,10 @@ namespace std } -But.... why the elipses? +But.... why the ellipses? - The elipses in the example above represent additional overloads + The ellipses in the example above represent additional overloads required for the parallel version of the function. These additional overloads are used to dispatch calls from the ISO C++ function signature to the appropriate parallel function (or sequential @@ -467,7 +460,7 @@ compile-time or run-time conditions. Compile-time conditions are referred to as "embarrassingly -parallel," and are denoted with the appropriate dispatch object, ie +parallel," and are denoted with the appropriate dispatch object, i.e., one of __gnu_parallel::sequential_tag, __gnu_parallel::parallel_tag, __gnu_parallel::balanced_tag, @@ -533,8 +526,6 @@ int main() const int threads_wanted = 20; omp_set_dynamic(false); omp_set_num_threads(threads_wanted); - if (omp_get_num_threads() != threads_wanted) - abort(); // Do work. @@ -593,7 +584,7 @@ See - Case Sensivitity + Case Sensitivity diff --git a/libstdc++-v3/doc/xml/manual/support.xml b/libstdc++-v3/doc/xml/manual/support.xml index 55169590028..3b0ad336680 100644 --- a/libstdc++-v3/doc/xml/manual/support.xml +++ b/libstdc++-v3/doc/xml/manual/support.xml @@ -98,7 +98,7 @@ - + Numeric Properties diff --git a/libstdc++-v3/doc/xml/manual/test.xml b/libstdc++-v3/doc/xml/manual/test.xml index 076138d10da..f9abbfd8da4 100644 --- a/libstdc++-v3/doc/xml/manual/test.xml +++ b/libstdc++-v3/doc/xml/manual/test.xml @@ -511,7 +511,7 @@ runtest --tool libstdc++ --srcdir=/path/to/gcc/libstdc++-v3/testsuite This file indicates that the host system can run tests which - incolved multiple threads. + involved multiple threads. @@ -563,7 +563,7 @@ runtest --tool libstdc++ --srcdir=/path/to/gcc/libstdc++-v3/testsuite We are interested in any strange failures of the testsuite; - please email the main libstdc++ mainling list if you see + please email the main libstdc++ mailing list if you see something odd or have questions. @@ -820,4 +820,4 @@ Currently plans for supported keywords include: - \ No newline at end of file + diff --git a/libstdc++-v3/doc/xml/manual/using.xml b/libstdc++-v3/doc/xml/manual/using.xml index 2782596201f..67086833a75 100644 --- a/libstdc++-v3/doc/xml/manual/using.xml +++ b/libstdc++-v3/doc/xml/manual/using.xml @@ -110,7 +110,7 @@ - C++98/03 include files. These are available in the default compilation mode, ie -std=c++98 or -std=gnu++98. + C++98/03 include files. These are available in the default compilation mode, i.e. -std=c++98 or -std=gnu++98. @@ -149,7 +149,7 @@
    -C++0x include files. These are only available in C++0x compilation mode, ie -std=c++0x or -std=gnu++0x. +C++0x include files. These are only available in C++0x compilation mode, i.e. -std=c++0x or -std=gnu++0x. @@ -470,7 +470,7 @@ g++ -Winvalid-pch -I. -include stdc++.h -H -g -O2 hello.cc -o test.exe std The ISO C++ standards specify that "all library entities are defined -within namespace std." This includes namepaces nested +within namespace std." This includes namespaces nested within namespace std, such as namespace std::tr1. @@ -521,7 +521,7 @@ cases where the qualified verbiage becomes unwieldy.) - + Using Namespace Composition