diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 8621dd06a25a..b19ae1bdfe77 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,13 @@ +2009-10-14 Benjamin Kosnik + + * doc/xml/authors.xml: Update. + * doc/xml/manual/intro.xml: Move test section... + * doc/xml/manual/appendix_porting.xml: ...here. + * doc/xml/manual/diagnostics.xml: Edit. + * doc/xml/manual/using.xml: Break out exception section. + * doc/xml/manual/using_exceptions.xml: New. + * doc/html: Regenerate. + 2009-10-14 Paolo Carlini * config/abi/pre/gnu.ver: Export the _S_construct<> helpers. diff --git a/libstdc++-v3/doc/html/api.html b/libstdc++-v3/doc/html/api.html index a1f1f289b191..fd511df55dd9 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/manual/abi.html b/libstdc++-v3/doc/html/manual/abi.html index b0aa6be6fd7b..7d11f7684644 100644 --- a/libstdc++-v3/doc/html/manual/abi.html +++ b/libstdc++-v3/doc/html/manual/abi.html @@ -1,6 +1,6 @@ -ABI Policy and Guidelines

Part IX.  Algorithms - +

diff --git a/libstdc++-v3/doc/html/manual/api.html b/libstdc++-v3/doc/html/manual/api.html index c2120235844e..f0f0e271f1a8 100644 --- a/libstdc++-v3/doc/html/manual/api.html +++ b/libstdc++-v3/doc/html/manual/api.html @@ -75,11 +75,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 a31760453cf7..b54faf1b14d2 100644 --- a/libstdc++-v3/doc/html/manual/appendix_contributing.html +++ b/libstdc++-v3/doc/html/manual/appendix_contributing.html @@ -5,7 +5,7 @@ Prev The GNU C++ Library Next


Appendix A.  Contributing - +

The GNU C++ Library follows an open development model. Active contributors are assigned maintainer-ship responsibility, and given diff --git a/libstdc++-v3/doc/html/manual/appendix_free.html b/libstdc++-v3/doc/html/manual/appendix_free.html index 8fb4578e1c95..5b529f93e8ef 100644 --- a/libstdc++-v3/doc/html/manual/appendix_free.html +++ b/libstdc++-v3/doc/html/manual/appendix_free.html @@ -5,7 +5,7 @@ Prev The GNU C++ Library Next


Appendix C.  Free Software Needs Free Documentation - +

The biggest deficiency in free operating systems is not in the software--it is the lack of good free manuals that we can include in diff --git a/libstdc++-v3/doc/html/manual/appendix_gpl.html b/libstdc++-v3/doc/html/manual/appendix_gpl.html index 88e1468293dd..0f9a838f3655 100644 --- a/libstdc++-v3/doc/html/manual/appendix_gpl.html +++ b/libstdc++-v3/doc/html/manual/appendix_gpl.html @@ -76,7 +76,7 @@

The precise terms and conditions for copying, distribution and modification follow. -

+

TERMS AND CONDITIONS

0. Definitions. @@ -617,7 +617,7 @@ waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. -

+

END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs diff --git a/libstdc++-v3/doc/html/manual/appendix_porting.html b/libstdc++-v3/doc/html/manual/appendix_porting.html index fceb1abc2446..037759421eeb 100644 --- a/libstdc++-v3/doc/html/manual/appendix_porting.html +++ b/libstdc++-v3/doc/html/manual/appendix_porting.html @@ -5,8 +5,8 @@ Prev The GNU C++ Library Next

Configure and Build Hacking

Prerequisites

As noted previously, certain other tools are necessary for hacking on files that control configure (configure.ac, diff --git a/libstdc++-v3/doc/html/manual/backwards.html b/libstdc++-v3/doc/html/manual/backwards.html index 499581ba33cf..252d177d4aa3 100644 --- a/libstdc++-v3/doc/html/manual/backwards.html +++ b/libstdc++-v3/doc/html/manual/backwards.html @@ -17,8 +17,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 @@ -44,7 +44,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. @@ -108,7 +108,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.

  • @@ -121,7 +121,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.). @@ -154,7 +154,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)
@@ -180,7 +180,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
@@ -188,7 +188,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). @@ -206,12 +206,12 @@ erase(size_type __pos = 0, size_type __n = npos) 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 @@ -299,14 +299,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 @@ -364,7 +364,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. @@ -436,7 +436,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 @@ -508,7 +508,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 @@ -519,7 +519,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 @@ -542,7 +542,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.

@@ -610,7 +610,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.

@@ -687,7 +687,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.

@@ -899,27 +899,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 e60f6671d252..806ca047865f 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 33.1. Bitmap Allocator Memory Map

268042949672954294967295Data -> Space for 64 ints

+

Table 33.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 diff --git a/libstdc++-v3/doc/html/manual/bk01ix01.html b/libstdc++-v3/doc/html/manual/bk01ix01.html index 9feecbf32ae8..51a67bbe12d9 100644 --- a/libstdc++-v3/doc/html/manual/bk01ix01.html +++ b/libstdc++-v3/doc/html/manual/bk01ix01.html @@ -1,6 +1,6 @@ -Index

Index

A

Algorithms, +Index

Index

A

Algorithms, Algorithms
Appendix
Contributing, diff --git a/libstdc++-v3/doc/html/manual/bk01pt02pr01.html b/libstdc++-v3/doc/html/manual/bk01pt02pr01.html index 2bdadd27d952..4ec01fefd93d 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt02pr01.html +++ b/libstdc++-v3/doc/html/manual/bk01pt02pr01.html @@ -3,7 +3,7 @@

Next


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/bk01pt03ch07s02.html b/libstdc++-v3/doc/html/manual/bk01pt03ch07s02.html index 5194208173b1..d72d23d2d95d 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt03ch07s02.html +++ b/libstdc++-v3/doc/html/manual/bk01pt03ch07s02.html @@ -1,6 +1,6 @@ -Adding Data to Exceptions

Adding Data to Exceptions

+Adding Data to Exceptions

Adding Data to Exceptions

The standard exception classes carry with them a single string as data (usually describing what went wrong or where the 'throw' took place). It's good to remember that you can add your own data to @@ -17,4 +17,4 @@ int e; DBID id; // some user-defined type }; -

+
diff --git a/libstdc++-v3/doc/html/manual/bk01pt03ch08.html b/libstdc++-v3/doc/html/manual/bk01pt03ch08.html index 758405f356c0..5c6d0c83a240 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt03ch08.html +++ b/libstdc++-v3/doc/html/manual/bk01pt03ch08.html @@ -1,6 +1,6 @@ -Chapter 8. Concept Checking + +
diff --git a/libstdc++-v3/doc/html/manual/io.html b/libstdc++-v3/doc/html/manual/io.html index 121c8be16368..1ede95bdcdad 100644 --- a/libstdc++-v3/doc/html/manual/io.html +++ b/libstdc++-v3/doc/html/manual/io.html @@ -5,5 +5,5 @@ Prev The GNU C++ Library Next
diff --git a/libstdc++-v3/doc/html/manual/iterators.html b/libstdc++-v3/doc/html/manual/iterators.html index c168b0e17873..a002097bfcd2 100644 --- a/libstdc++-v3/doc/html/manual/iterators.html +++ b/libstdc++-v3/doc/html/manual/iterators.html @@ -5,5 +5,5 @@ Prev The GNU C++ Library Next

Part VIII.  Iterators - +

diff --git a/libstdc++-v3/doc/html/manual/locales.html b/libstdc++-v3/doc/html/manual/locales.html index 87b7c2b7bbc7..296e8aecbba9 100644 --- a/libstdc++-v3/doc/html/manual/locales.html +++ b/libstdc++-v3/doc/html/manual/locales.html @@ -398,25 +398,25 @@ global locale" (emphasis Paolo), that is: What should non-required facet instantiations do? If the 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.

- System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x) + . Copyright © 1999 ISO.

+ The Open Group Base Specifications, Issue 6 (IEEE Std. 1003.1-2004) . 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/localization.html b/libstdc++-v3/doc/html/manual/localization.html index 35b18f8617f6..152956fa1769 100644 --- a/libstdc++-v3/doc/html/manual/localization.html +++ b/libstdc++-v3/doc/html/manual/localization.html @@ -5,5 +5,5 @@ Prev The GNU C++ Library Next


diff --git a/libstdc++-v3/doc/html/manual/make.html b/libstdc++-v3/doc/html/manual/make.html index 6a56ea690da1..2563d277938d 100644 --- a/libstdc++-v3/doc/html/manual/make.html +++ b/libstdc++-v3/doc/html/manual/make.html @@ -1,9 +1,9 @@ -Make

Make

If you have never done this before, you should read the basic +Make

Make

If you have never done this before, you should read the basic GCC Installation Instructions first. Read all of them. Twice.

Then type:make, and congratulations, you're started to build. -

+

diff --git a/libstdc++-v3/doc/html/manual/memory.html b/libstdc++-v3/doc/html/manual/memory.html index 035b50d5836c..b49003b7a820 100644 --- a/libstdc++-v3/doc/html/manual/memory.html +++ b/libstdc++-v3/doc/html/manual/memory.html @@ -93,7 +93,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 @@ -106,7 +106,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 @@ -143,7 +143,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 @@ -308,11 +308,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. @@ -320,28 +320,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. + .

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 46af419a9ae5..635ef1dd6a10 100644 --- a/libstdc++-v3/doc/html/manual/parallel_mode.html +++ b/libstdc++-v3/doc/html/manual/parallel_mode.html @@ -13,11 +13,11 @@ 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

Bibliography

+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/profile_mode.html b/libstdc++-v3/doc/html/manual/profile_mode.html index fca37908a356..e47ecdb67e15 100644 --- a/libstdc++-v3/doc/html/manual/profile_mode.html +++ b/libstdc++-v3/doc/html/manual/profile_mode.html @@ -135,7 +135,7 @@ vector-size: improvement = 3: call stack = 0x804842c ... call context. (Environment variable not supported.)

-

Bibliography

+

Bibliography

Perflint: A Context Sensitive Performance Advisor for C++ Programs . Lixia Liu. Silvius Rus. Copyright © 2009 . Proceedings of the 2009 International Symposium on Code Generation diff --git a/libstdc++-v3/doc/html/manual/setup.html b/libstdc++-v3/doc/html/manual/setup.html index bab3b46b30cf..4d8f3d011725 100644 --- a/libstdc++-v3/doc/html/manual/setup.html +++ b/libstdc++-v3/doc/html/manual/setup.html @@ -3,7 +3,7 @@ Chapter 2. Setup

Chapter 2. Setup

To transform libstdc++ sources into installed include files + Next


Chapter 2. Setup

To transform libstdc++ sources into installed include files and properly built binaries useful for linking to other software is a multi-step process. Steps include getting the sources, configuring and building the sources, testing, and installation. diff --git a/libstdc++-v3/doc/html/manual/shared_ptr.html b/libstdc++-v3/doc/html/manual/shared_ptr.html index ea7e3208f9dd..978c7ec54c67 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 beca228c986f..09f971a46e38 100644 --- a/libstdc++-v3/doc/html/manual/spine.html +++ b/libstdc++-v3/doc/html/manual/spine.html @@ -2,18 +2,18 @@ The GNU C++ Library

The GNU C++ Library


Table of Contents

I. Introduction -
1. Status
Implementation Status
C++ 1998/2003
C++ TR1
C++ 200x
C++ TR 24733
License
The Code: GPL
The Documentation: GPL, FDL
Bugs
Implementation Bugs
Standard Bugs
2. Setup
Prerequisites
Configure
Make
Test
Organization
Running the Testsuite
Writing a new test case
Test Harness and Utilities
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
Exceptions
Propagating Exceptions aka Exception Neutrality
Exception Safety
Support for -fno-exceptions
Debugging Support
Using g++
Debug Versions of Library Binary Files
Memory Leak Hunting
Using gdb
Tracking uncaught exceptions
Debug Mode
Compile Time Checking
Profile-based Performance Analysis
II. +
1. Status
Implementation Status
C++ 1998/2003
C++ TR1
C++ 200x
C++ TR 24733
License
The Code: GPL
The Documentation: GPL, FDL
Bugs
Implementation Bugs
Standard Bugs
2. Setup
Prerequisites
Configure
Make
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
Exceptions
Exception Safety
Exception Neutrality
Doing without
Compatibility
Debugging Support
Using g++
Debug Versions of Library Binary Files
Memory Leak Hunting
Using gdb
Tracking uncaught exceptions
Debug Mode
Compile Time Checking
Profile-based Performance Analysis
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. +
7. Exceptions
Exception Classes
Adding Data to Exceptions
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. @@ -46,12 +46,12 @@
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. +
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
Test
Organization
Running the Testsuite
Writing a new test case
Test Harness and Utilities
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 version 3 -
E. GNU Free Documentation License
Index