From 062a902517fae875a44f73117ee795cdad5e7aaf Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Sun, 20 Nov 2011 19:56:48 +0000 Subject: [PATCH] appendix_contributing.xml: Do not use "here" as link text. * doc/xml/manual/appendix_contributing.xml: Do not use "here" as link text. * doc/xml/faq.xml: Likewise. Do not request standard library issues to be reported to the libstdc++ mailing list. * doc/xml/manual/status_cxx2011.xml: Document implementation-defined behaviour. * doc/xml/manual/status_cxxtr1.xml: Likewise. * doc/xml/manual/utilities.xml: Fix grammar, probably caused by a global search and replace of "part" by "chapter". * doc/xml/manual/shared_ptr.xml: Remove outdated information. * doc/xml/manual/messages.xml: Be more specific about systems where using 'int' for catalog handle is not a problem, mentioned LWG issue. From-SVN: r181532 --- libstdc++-v3/ChangeLog | 15 ++++ libstdc++-v3/doc/xml/faq.xml | 9 ++- .../doc/xml/manual/appendix_contributing.xml | 25 +++--- libstdc++-v3/doc/xml/manual/messages.xml | 5 +- libstdc++-v3/doc/xml/manual/shared_ptr.xml | 78 +++---------------- .../doc/xml/manual/status_cxx2011.xml | 57 +++++++++++++- libstdc++-v3/doc/xml/manual/status_cxxtr1.xml | 16 ++++ libstdc++-v3/doc/xml/manual/utilities.xml | 2 +- 8 files changed, 120 insertions(+), 87 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 92fe3827e1bc..49da2c45d3fc 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,18 @@ +2011-11-20 Jonathan Wakely + + * doc/xml/manual/appendix_contributing.xml: Do not use "here" as link + text. + * doc/xml/faq.xml: Likewise. Do not request standard library issues + to be reported to the libstdc++ mailing list. + * doc/xml/manual/status_cxx2011.xml: Document implementation-defined + behaviour. + * doc/xml/manual/status_cxxtr1.xml: Likewise. + * doc/xml/manual/utilities.xml: Fix grammar, probably caused by a + global search and replace of "part" by "chapter". + * doc/xml/manual/shared_ptr.xml: Remove outdated information. + * doc/xml/manual/messages.xml: Be more specific about systems where + using 'int' for catalog handle is not a problem, mentioned LWG issue. + 2011-11-19 Paolo Carlini * include/debug/bitset (operator[](size_t) const): Declare constexpr. diff --git a/libstdc++-v3/doc/xml/faq.xml b/libstdc++-v3/doc/xml/faq.xml index af9b6da82fe3..86142ec9c460 100644 --- a/libstdc++-v3/doc/xml/faq.xml +++ b/libstdc++-v3/doc/xml/faq.xml @@ -713,14 +713,15 @@ For those people who are not part of the ISO Library Group (i.e., nearly all of us needing to read this page in the first place), a public list of the library defects is occasionally - published here. + published on the WG21 + website. Some of these issues have resulted in code changes in libstdc++. If you think you've discovered a new bug that is not listed, - please post a message describing your problem - to libstdc++@gcc.gnu.org or the Usenet group - comp.lang.c++.moderated. + please post a message describing your problem to the author of + the library issues list or the Usenet group comp.lang.c++.moderated. diff --git a/libstdc++-v3/doc/xml/manual/appendix_contributing.xml b/libstdc++-v3/doc/xml/manual/appendix_contributing.xml index 49cbcab9ba39..d060f45a6d38 100644 --- a/libstdc++-v3/doc/xml/manual/appendix_contributing.xml +++ b/libstdc++-v3/doc/xml/manual/appendix_contributing.xml @@ -45,10 +45,10 @@ two meeting commitment for voting rights, may get a copy of the standard from their respective national standards organization. In the USA, this national standards - organization is ANSI and their web-site is right - here. - (And if you've already registered with them, clicking this link will take you to directly to the place where you can - buy the standard on-line.) + organization is + ANSI. + (And if you've already registered with them you can + buy the standard on-line.) @@ -56,17 +56,16 @@ The library working group bugs, and known defects, can be obtained here: - http://www.open-std.org/jtc1/sc22/wg21 + http://www.open-std.org/jtc1/sc22/wg21 The newsgroup dedicated to standardization issues is - comp.std.c++: this FAQ for this group is quite useful and - can be - found - here . + comp.std.c++: the + FAQ + for this group is quite useful. @@ -83,15 +82,15 @@ Be familiar with the extensions that preceded these general GNU rules. These style issues for libstdc++ can be - found here. + found in Coding Style. And last but certainly not least, read the - library-specific information - found here. + library-specific information found in + Porting and Maintenance. @@ -271,7 +270,7 @@ It has subdirectories: Files that are used in constructing the library, but are not installed. - testsuites/[backward, demangle, ext, performance, thread, 17_* to 27_*] + testsuites/[backward, demangle, ext, performance, thread, 17_* to 30_*] Test programs are here, and may be used to begin to exercise the library. Support for "make check" and "make check-install" is complete, and runs through all the subdirectories here when this diff --git a/libstdc++-v3/doc/xml/manual/messages.xml b/libstdc++-v3/doc/xml/manual/messages.xml index d6ce1f7f7a38..4dea4b3738b5 100644 --- a/libstdc++-v3/doc/xml/manual/messages.xml +++ b/libstdc++-v3/doc/xml/manual/messages.xml @@ -119,8 +119,9 @@ A couple of notes on the standard. First, why is messages_base::catalog specified as a typedef to int? This makes sense for implementations that use -catopen, but not for others. Fortunately, it's not heavily -used and so only a minor irritant. +catopen and define nl_catd as int, but not for +others. Fortunately, it's not heavily used and so only a minor irritant. +This has been reported as a possible defect in the standard (LWG 2028). diff --git a/libstdc++-v3/doc/xml/manual/shared_ptr.xml b/libstdc++-v3/doc/xml/manual/shared_ptr.xml index 6e3392f88ee4..be1aaf655f27 100644 --- a/libstdc++-v3/doc/xml/manual/shared_ptr.xml +++ b/libstdc++-v3/doc/xml/manual/shared_ptr.xml @@ -95,13 +95,13 @@ until the last weak reference is dropped. _Sp_counted_base_impl<Ptr, Deleter, Lp> -Inherits from _Sp_counted_base and stores a pointer of type Ptr -and a deleter of type Deleter. _Sp_deleter is +Inherits from _Sp_counted_base and stores a pointer of type Ptr +and a deleter of type Deleter. _Sp_deleter is used when the user doesn't supply a custom deleter. Unlike Boost's, this default deleter is not "checked" because GCC already issues a warning if delete is used with an incomplete type. -This is the only derived type used by shared_ptr<Ptr> -and it is never used by shared_ptr, which uses one of +This is the only derived type used by tr1::shared_ptr<Ptr> +and it is never used by std::shared_ptr, which uses one of the following types, depending on how the shared_ptr is constructed. @@ -149,11 +149,6 @@ that simplifies the implementation slightly. - - -
Thread Safety - - C++11-only features are: rvalue-ref/move support, allocator support, aliasing constructor, make_shared & allocate_shared. Additionally, @@ -161,6 +156,11 @@ the constructors taking auto_ptr parameters are deprecated in C++11 mode. + +
+ +
Thread Safety + The Thread @@ -243,7 +243,7 @@ available policies are: - _S_Atomic + _S_Atomic Selected when GCC supports a builtin atomic compare-and-swap operation @@ -256,7 +256,7 @@ synchronisation. - _S_Mutex + _S_Mutex The _Sp_counted_base specialization for this policy contains a mutex, @@ -267,7 +267,7 @@ builtins aren't available so explicit memory barriers are needed in places. - _S_Single + _S_Single This policy uses a non-reentrant add_ref_lock() with no locking. It is @@ -285,32 +285,6 @@ used when libstdc++ is built without --enable-threads.
-
Dual C++11 and TR1 Implementation - - - -The interface of tr1::shared_ptr was extended for C++11 -with support for rvalue-references and the other features from N2351. -The _Sp_counted_base base class is implemented in -tr1/boost_sp_shared_count.h and is common to the TR1 -and C++11 versions of shared_ptr. - - - -The classes derived from _Sp_counted_base (see Class Hierarchy -above) and __shared_count are implemented separately for C++11 -and TR1, in bits/shared_ptr.h and -tr1/shared_ptr.h respectively. - - - -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++11 and TR1 versions needs to diverge further then it might be necessary to -duplicate _Sp_counted_base and only make changes to -the C++11 version. - -
Related functions and classes @@ -377,34 +351,6 @@ be private.
- -
Use diff --git a/libstdc++-v3/doc/xml/manual/status_cxx2011.xml b/libstdc++-v3/doc/xml/manual/status_cxx2011.xml index 6f53a73348c3..34aff81101f9 100644 --- a/libstdc++-v3/doc/xml/manual/status_cxx2011.xml +++ b/libstdc++-v3/doc/xml/manual/status_cxx2011.xml @@ -2409,7 +2409,8 @@ particular release. 30.4.1.3 Timed mutex types - + On POSIX sytems these types are only defined if the OS + supports the POSIX Timeouts option. 30.4.1.3.1 @@ -2627,5 +2628,59 @@ particular release. +
Implementation Specific Behavior + + For behaviour which is also specified by the 1998 and 2003 standards, + see C++ 1998/2003 Implementation + Specific Behavior. This section only documents behaviour which + is new in the 2011 standard. + + + + 20.8.9.1.3 [func.bind.place]/1 There are 29 + placeholders defined and the placeholder types are + CopyAssignable. + + + + 30.2.3 [thread.req.native]/1 + native_handle_type and + native_handle are provided. The handle types + are defined in terms of the Gthreads abstraction layer. + + thread: The native handle type is + a typedef for __gthread_t i.e. pthread_t + when GCC is configured with the posix thread + model. The value of the native handle is undefined for a thread + which is not joinable. + + mutex and + timed_mutex: + The native handle type is __gthread_mutex_t* i.e. + pthread_mutex_t* for the posix + thread model. + + recursive_mutex and + recursive_timed_mutex: + The native handle type is __gthread_recursive_mutex_t* + i.e. pthread_mutex_t* for the posix + thread model. + + condition_variable: The native + handle type is __gthread_cond_t* i.e. + pthread_cond_t* for the posix + thread model. + + + + + + 30.6.1 [futures.overview]/2 + launch is a scoped enumeration type with + overloaded operators to support bitmask operations. There are no + additional bitmask elements defined. + + +
diff --git a/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml b/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml index 321c4ba269c4..58571f2dde7c 100644 --- a/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml +++ b/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml @@ -1779,4 +1779,20 @@ release. +
Implementation Specific Behavior + + For behaviour which is specified by the 1998 and 2003 standards, + see C++ 1998/2003 Implementation + Specific Behavior. This section documents behaviour which + is required by TR1. + + + + 3.6.4 [tr.func.bind.place]/1 There are 29 + placeholders defined and the placeholder types are + Assignable. + + +
+ diff --git a/libstdc++-v3/doc/xml/manual/utilities.xml b/libstdc++-v3/doc/xml/manual/utilities.xml index 5c3a8fd4864d..a60bd34c6d48 100644 --- a/libstdc++-v3/doc/xml/manual/utilities.xml +++ b/libstdc++-v3/doc/xml/manual/utilities.xml @@ -25,7 +25,7 @@ If you don't know what functors are, you're not alone. Many people get slightly the wrong idea. In the interest of not reinventing the wheel, we will refer you to the introduction to the functor - concept written by SGI as chapter of their STL, in + concept written by SGI as part of their STL, in their http://www.sgi.com/tech/stl/functors.html.