documentation.html: Update for 3.0.96.
2002-02-01 Phil Edwards <pme@gcc.gnu.org> * docs/html/documentation.html: Update for 3.0.96. * docs/html/faq/index.html: Update for 3.0.96. * docs/html/faq/index.txt: Regenerated. * docs/doxygen/TODO: Update notes. * docs/html/17_intro/howto.html: Initial impl-specific listing. From-SVN: r49422
This commit is contained in:
parent
b24d861d0e
commit
00181da3af
6 changed files with 320 additions and 209 deletions
|
@ -1,3 +1,11 @@
|
|||
2002-02-01 Phil Edwards <pme@gcc.gnu.org>
|
||||
|
||||
* docs/html/documentation.html: Update for 3.0.96.
|
||||
* docs/html/faq/index.html: Update for 3.0.96.
|
||||
* docs/html/faq/index.txt: Regenerated.
|
||||
* docs/doxygen/TODO: Update notes.
|
||||
* docs/html/17_intro/howto.html: Initial impl-specific listing.
|
||||
|
||||
2002-01-31 Benjamin Kosnik <bkoz@redhat.com>
|
||||
|
||||
* config/locale/codecvt_specializations_ieee_1003.1-200x.h:
|
||||
|
|
|
@ -23,18 +23,19 @@ c25 stl_algo.h (lots of stuff)
|
|||
c26 <complex>, <valarray>, stl_numeric.h[26.4], Note A
|
||||
c27 Untouched
|
||||
|
||||
backward/ Not scanned by doxygen. Should it be?
|
||||
backward/* Not scanned by doxygen. Should it be? Doubtful.
|
||||
|
||||
ext/ Some of the SGI algorithm/functional extensions.
|
||||
ext/* Some of the SGI algorithm/functional extensions.
|
||||
All of rope/hashing/slist need docs.
|
||||
|
||||
__gnu_cxx Tricky.
|
||||
__gnu_cxx Tricky. Right now ext/* are in this namespace.
|
||||
|
||||
[1.3.5] "implementation-defined behavior: behavior ... that depends
|
||||
on the implementation *and that each implementation shall
|
||||
document*." [my emphasis] Not all implementation choices
|
||||
have been thus described; doxygen is not necessarily the
|
||||
appropriate place for such descriptions, either.
|
||||
appropriate place for such descriptions, either. I suggest
|
||||
adding this list to the Chapter 17 HOWTO.
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
|
@ -46,8 +47,11 @@ do not have the C code (to which the doxygen comments would be attached),
|
|||
this would need to be done in entirely separate files, a la doxygroups.cc.
|
||||
|
||||
B) Huge chunks of containers and strings are described in common "Tables"
|
||||
in the standard. How to reproduce this information?
|
||||
|
||||
in the standard. How to reproduce this information? I suspect we should
|
||||
simply write some HTML tables (say, one <table> per Table per file), and
|
||||
use doxygen hooks like @pre and @see to reference the tables. Then the
|
||||
individual classes would do like the standard does, and only document
|
||||
members for which additional info is available.
|
||||
|
||||
|
||||
STYLE:
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
<li><a href="#3">The Standard C++ library and multithreading</a>
|
||||
<li><a href="#4"><code><foo></code> vs <code><foo.h></code></a>
|
||||
<li><a href="porting-howto.html">Porting HOWTO</a>
|
||||
<li><a href="#5">Behavior specific to libstdc++-v3</a>
|
||||
</ul>
|
||||
|
||||
<hr>
|
||||
|
@ -162,6 +163,69 @@
|
|||
<a href="../faq/index.html">to the FAQ</a>.
|
||||
</p>
|
||||
|
||||
<hr>
|
||||
<h2><a name="5">Behavior specific to libstdc++-v3</a></h2>
|
||||
<p>The ISO standard defines the following:
|
||||
<blockquote><dl>
|
||||
<dt><code>[1.3.5] implementation-defined behavior</code>
|
||||
<dd>behavior, for a well-formed program construct and correct data, that
|
||||
depends on the implementation <strong>and that each implementation
|
||||
shall document</strong>.
|
||||
</dl></blockquote>
|
||||
We do so here, for the C++ library only. Behavior of the compiler,
|
||||
linker, runtime loader, and other elements of "the
|
||||
implementation" are documented elsewhere.
|
||||
</p>
|
||||
<p>For each entry, we give the section number of the standard, when
|
||||
applicable. This list is known to be incomplet and inkorrekt.
|
||||
</p>
|
||||
<p><strong>[17.4.4.5]</strong> Non-reentrant functions are probably best
|
||||
discussed in the various sections on multithreading (see above).
|
||||
</p>
|
||||
<!-- [17.4.4.8]/3 says any function that doesn't have an exception-spec
|
||||
can throw whatever we want; see also its footnote. Let's list those
|
||||
in the sections where the function itself occurs.
|
||||
-->
|
||||
<p><strong>[18.1]/4</strong> The type of <code>NULL</code> is described
|
||||
<a href="../18_support/howto.html#1">here</a>.
|
||||
</p>
|
||||
<p><strong>[18.3]/8</strong> Even though it's listed in the library
|
||||
sections, libstdc++-v3 has zero control over what the cleanup code hands
|
||||
back to the runtime loader. Talk to the compiler people. :-)
|
||||
</p>
|
||||
<p><strong>[18.4.2.1]/5</strong> (bad_alloc),<br>
|
||||
<strong>[18.5.2]/5</strong> (bad_cast),<br>
|
||||
<strong>[18.5.3]/5</strong> (bad_typeid),<br>
|
||||
<strong>[18.6.1]/8</strong> (exception),<br>
|
||||
<strong>[18.6.2.1]/5</strong> (bad_exception): The <code>what()</code>
|
||||
member function of class <code>std::exception</code>, and these other
|
||||
classes publicly derived from it, simply returns the name of the
|
||||
class. But they are the <em>mangled</em> names.
|
||||
<!-- demangler bug fixed yet? -->
|
||||
(The classes in <code><stdexcept></code> have constructors which
|
||||
require a string argument to use in <code>what()</code> calls, so the
|
||||
question does not arise in most user-defined exceptions.)
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p><strong></strong>
|
||||
</p>
|
||||
<p>Return <a href="#top">to top of page</a> or
|
||||
<a href="../faq/index.html">to the FAQ</a>.
|
||||
</p>
|
||||
|
||||
|
||||
|
||||
<!-- ####################################################### -->
|
||||
|
|
|
@ -20,24 +20,27 @@
|
|||
using the Doxygen tool. These are useful for examining the signatures
|
||||
of public member functions for the library classes, etc.
|
||||
</p>
|
||||
<p>One collection is for the GCC 3.0 release,
|
||||
<code>libstdc++-doxygen-3.0.tar.gz</code> (3.8MB),
|
||||
<a href="libstdc++-doxygen-3.0/index.html">viewable online</a>.
|
||||
The latest collection is for the libstdc++ 3.0.95 snapshot release,
|
||||
<a href="libstdc++-doxygen-USERS-3.0.95/index.html">viewable online</a>.
|
||||
Other collections for 3.0.95 exist on the FTP sites, but are not
|
||||
viewable online.
|
||||
</p>
|
||||
<p>The collections are available in the libstdc++ snapshots directory at
|
||||
<code><URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/></code>.
|
||||
You will almost certainly need to use one of the
|
||||
<a href="http://gcc.gnu.org/mirrors.html">mirror sites</a> to download
|
||||
the tarball. After unpacking, simply load
|
||||
libstdc++-doxygen-*/index.html
|
||||
the tarball. After unpacking, simply load libstdc++-html-*/index.html
|
||||
into a browser. Feedback (and additional documentation!) is welcome.
|
||||
</p>
|
||||
<p>With 3.0.95, an initial set of man pages are also available in the same
|
||||
directory as the doxygen collections. Start with <code>Intro(3)</code>.
|
||||
<p>The available user-level collections are also viewable online:
|
||||
<ul>
|
||||
<li><a href="libstdc++-doxygen-3.0/index.html">docs for the 3.0 release</a>
|
||||
<li><a href="libstdc++-html-USERS-3.0.96/index.html">docs for the most
|
||||
recent libstdc++ snapshot (3.0.96)</a>
|
||||
<li><a href="latest-doxygen/index.html">"the latest collection"</a>
|
||||
(snapshot collection or later; see the date on the first page)
|
||||
</ul>
|
||||
Other collections (man pages, maintainer docs) are only available on the
|
||||
FTP sites.
|
||||
</p>
|
||||
|
||||
<p>Beginning with 3.0.95, an initial set of man pages are also available in
|
||||
the same place as the HTML collections. Start with <code>Intro(3)</code>.
|
||||
</p>
|
||||
|
||||
<hr>
|
||||
|
|
|
@ -15,8 +15,12 @@
|
|||
<h1 class="centered">libstdc++ Frequently Asked Questions</h1>
|
||||
|
||||
<p>The latest version of this document is always available at
|
||||
<a href="http://gcc.gnu.org/onlinedocs/libstdc++/faq/">
|
||||
http://gcc.gnu.org/onlinedocs/libstdc++/faq/</a>.</p>
|
||||
<a href="http://gcc.gnu.org/onlinedocs/libstdc++/faq/">
|
||||
http://gcc.gnu.org/onlinedocs/libstdc++/faq/</a>. The main documentation
|
||||
page is at
|
||||
<a href="http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html">
|
||||
http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html</a>.
|
||||
</p>
|
||||
|
||||
<p>To the <a href="http://gcc.gnu.org/libstdc++/">libstdc++-v3 homepage</a>.
|
||||
|
||||
|
@ -105,7 +109,7 @@ http://gcc.gnu.org/onlinedocs/libstdc++/faq/</a>.</p>
|
|||
library reaches stable plateaus, it is captured in a snapshot
|
||||
and released. The current release is
|
||||
<a href="http://gcc.gnu.org/libstdc++/download.html">the
|
||||
twelfth snapshot</a>. For those who want to see exactly how
|
||||
thirteenth snapshot</a>. For those who want to see exactly how
|
||||
far the project has come, or just want the latest
|
||||
bleeding-edge code, the up-to-date source is available over
|
||||
anonymous CVS, and can even be browsed over the Web (see below).
|
||||
|
@ -161,7 +165,7 @@ http://gcc.gnu.org/onlinedocs/libstdc++/faq/</a>.</p>
|
|||
|
||||
<hr>
|
||||
<h2><a name="1_4">1.4 How do I get libstdc++?</a></h2>
|
||||
<p>The twelfth (and latest) snapshot of libstdc++-v3 is
|
||||
<p>The thirteenth (and latest) snapshot of libstdc++-v3 is
|
||||
<a href="http://gcc.gnu.org/libstdc++/download.html">available via
|
||||
ftp</a>.
|
||||
</p>
|
||||
|
@ -460,13 +464,26 @@ which is no longer available, thanks deja...-->
|
|||
|
||||
<h2><a name="4_1">4.1 What works already?</a></h2>
|
||||
<p>This is a verbatim clip from the "Status" section
|
||||
of the RELEASE-NOTES for the latest snapshot.
|
||||
of the RELEASE-NOTES for the latest snapshot. For a list of
|
||||
fixed bugs, see that file.
|
||||
</p>
|
||||
|
||||
<!-- Yeah, I meant that "verbatim clip" thing literally... :-) -->
|
||||
|
||||
<pre>
|
||||
New:
|
||||
New in 3.0.96:
|
||||
---
|
||||
- more doxygen documentation.
|
||||
- extensions moved out of namespace std
|
||||
- HPUX long long support
|
||||
- more string optimizations
|
||||
- support for NetBSD cross compiles
|
||||
- concept_check merge from boost
|
||||
- header simplification
|
||||
- named locale bug shakeout
|
||||
- thread testsuite
|
||||
|
||||
New in 3.0.95:
|
||||
---
|
||||
- add S390, m68k, x86-64 support.
|
||||
- doxygen documentation has been extended, including man pages.
|
||||
|
|
|
@ -2,57 +2,59 @@
|
|||
libstdc++ Frequently Asked Questions
|
||||
|
||||
The latest version of this document is always available at
|
||||
[1]http://gcc.gnu.org/onlinedocs/libstdc++/faq/.
|
||||
[1]http://gcc.gnu.org/onlinedocs/libstdc++/faq/. The main
|
||||
documentation page is at
|
||||
[2]http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html.
|
||||
|
||||
To the [2]libstdc++-v3 homepage.
|
||||
To the [3]libstdc++-v3 homepage.
|
||||
_________________________________________________________________
|
||||
|
||||
Questions
|
||||
|
||||
1. [3]General Information
|
||||
1. [4]What is libstdc++-v3?
|
||||
2. [5]Why should I use libstdc++?
|
||||
3. [6]Who's in charge of it?
|
||||
4. [7]How do I get libstdc++?
|
||||
5. [8]When is libstdc++ going to be finished?
|
||||
6. [9]How do I contribute to the effort?
|
||||
7. [10]What happened to libg++? I need that!
|
||||
8. [11]What if I have more questions?
|
||||
9. [12]What are the license terms for libstdc++-v3?
|
||||
2. [13]Installation
|
||||
1. [14]How do I install libstdc++-v3?
|
||||
2. [15][removed]
|
||||
3. [16]What is this CVS thing that you keep mentioning?
|
||||
4. [17]How do I know if it works?
|
||||
5. [18]This library is HUGE! And what's libsupc++?
|
||||
3. [19]Platform-Specific Issues
|
||||
1. [20]Can libstdc++-v3 be used with <my favorite compiler>?
|
||||
2. [21][removed]
|
||||
3. [22]Building under DEC OSF kills the assembler
|
||||
4. [23]I can't use 'long long' on Solaris
|
||||
4. [24]Known Bugs and Non-Bugs
|
||||
1. [25]What works already?
|
||||
2. [26]Bugs in gcc/g++ (not libstdc++-v3)
|
||||
3. [27]Bugs in the C++ language/lib specification
|
||||
4. [28]Things in libstdc++ that look like bugs
|
||||
o [29]reopening a stream fails
|
||||
o [30]-Weffc++ complains too much
|
||||
o [31]"ambiguous overloads" after including an old-style
|
||||
1. [4]General Information
|
||||
1. [5]What is libstdc++-v3?
|
||||
2. [6]Why should I use libstdc++?
|
||||
3. [7]Who's in charge of it?
|
||||
4. [8]How do I get libstdc++?
|
||||
5. [9]When is libstdc++ going to be finished?
|
||||
6. [10]How do I contribute to the effort?
|
||||
7. [11]What happened to libg++? I need that!
|
||||
8. [12]What if I have more questions?
|
||||
9. [13]What are the license terms for libstdc++-v3?
|
||||
2. [14]Installation
|
||||
1. [15]How do I install libstdc++-v3?
|
||||
2. [16][removed]
|
||||
3. [17]What is this CVS thing that you keep mentioning?
|
||||
4. [18]How do I know if it works?
|
||||
5. [19]This library is HUGE! And what's libsupc++?
|
||||
3. [20]Platform-Specific Issues
|
||||
1. [21]Can libstdc++-v3 be used with <my favorite compiler>?
|
||||
2. [22][removed]
|
||||
3. [23]Building under DEC OSF kills the assembler
|
||||
4. [24]I can't use 'long long' on Solaris
|
||||
4. [25]Known Bugs and Non-Bugs
|
||||
1. [26]What works already?
|
||||
2. [27]Bugs in gcc/g++ (not libstdc++-v3)
|
||||
3. [28]Bugs in the C++ language/lib specification
|
||||
4. [29]Things in libstdc++ that look like bugs
|
||||
o [30]reopening a stream fails
|
||||
o [31]-Weffc++ complains too much
|
||||
o [32]"ambiguous overloads" after including an old-style
|
||||
header
|
||||
o [32]The g++-3 headers are not ours
|
||||
o [33]compilation errors from streambuf.h
|
||||
o [34]errors about *Cconcept and constraints in the STL...
|
||||
5. [35]Aw, that's easy to fix!
|
||||
5. [36]Miscellaneous
|
||||
1. [37]string::iterator is not char*; vector<T>::iterator is not
|
||||
o [33]The g++-3 headers are not ours
|
||||
o [34]compilation errors from streambuf.h
|
||||
o [35]errors about *Cconcept and constraints in the STL...
|
||||
5. [36]Aw, that's easy to fix!
|
||||
5. [37]Miscellaneous
|
||||
1. [38]string::iterator is not char*; vector<T>::iterator is not
|
||||
T*
|
||||
2. [38]What's next after libstdc++-v3?
|
||||
3. [39]What about the STL from SGI?
|
||||
4. [40]Extensions and Backward Compatibility
|
||||
5. [41][removed]
|
||||
6. [42]Is libstdc++-v3 thread-safe?
|
||||
7. [43]How do I get a copy of the ISO C++ Standard?
|
||||
8. [44]What's an ABI and why is it so messy?
|
||||
2. [39]What's next after libstdc++-v3?
|
||||
3. [40]What about the STL from SGI?
|
||||
4. [41]Extensions and Backward Compatibility
|
||||
5. [42][removed]
|
||||
6. [43]Is libstdc++-v3 thread-safe?
|
||||
7. [44]How do I get a copy of the ISO C++ Standard?
|
||||
8. [45]What's an ABI and why is it so messy?
|
||||
_________________________________________________________________
|
||||
|
||||
1.0 General Information
|
||||
|
@ -62,18 +64,18 @@
|
|||
The GNU Standard C++ Library v3 is an ongoing project to implement the
|
||||
ISO 14882 Standard C++ library as described in chapters 17 through 27
|
||||
and annex D. As the library reaches stable plateaus, it is captured in
|
||||
a snapshot and released. The current release is [45]the twelfth
|
||||
a snapshot and released. The current release is [46]the thirteenth
|
||||
snapshot. For those who want to see exactly how far the project has
|
||||
come, or just want the latest bleeding-edge code, the up-to-date
|
||||
source is available over anonymous CVS, and can even be browsed over
|
||||
the Web (see below).
|
||||
|
||||
The older libstdc++-v2 project is no longer maintained; the code has
|
||||
been completely replaced and rewritten. [46]If you are using V2, then
|
||||
been completely replaced and rewritten. [47]If you are using V2, then
|
||||
you need to report bugs to your system vendor, not to the V3 list.
|
||||
|
||||
A more formal description of the V3 goals can be found in the official
|
||||
[47]design document.
|
||||
[48]design document.
|
||||
_________________________________________________________________
|
||||
|
||||
1.2 Why should I use libstdc++?
|
||||
|
@ -86,8 +88,8 @@
|
|||
|
||||
The GNU C/C++/FORTRAN/<pick-a-language> compiler (gcc, g++, etc) is
|
||||
widely considered to be one of the leading compilers in the world. Its
|
||||
development has recently been taken over by the [48]GCC team. All of
|
||||
the rapid development and near-legendary [49]portability that are the
|
||||
development has recently been taken over by the [49]GCC team. All of
|
||||
the rapid development and near-legendary [50]portability that are the
|
||||
hallmarks of an open-source project are being applied to libstdc++.
|
||||
|
||||
That means that all of the Standard classes and functions (such as
|
||||
|
@ -105,16 +107,16 @@
|
|||
|
||||
Development and discussion is held on the libstdc++ mailing list.
|
||||
Subscribing to the list, or searching the list archives, is open to
|
||||
everyone. You can read instructions for doing so on the [50]homepage.
|
||||
everyone. You can read instructions for doing so on the [51]homepage.
|
||||
If you have questions, ideas, code, or are just curious, sign up!
|
||||
_________________________________________________________________
|
||||
|
||||
1.4 How do I get libstdc++?
|
||||
|
||||
The twelfth (and latest) snapshot of libstdc++-v3 is [51]available via
|
||||
ftp.
|
||||
The thirteenth (and latest) snapshot of libstdc++-v3 is [52]available
|
||||
via ftp.
|
||||
|
||||
The [52]homepage has instructions for retrieving the latest CVS
|
||||
The [53]homepage has instructions for retrieving the latest CVS
|
||||
sources, and for browsing the CVS sources over the web.
|
||||
|
||||
The subset commonly known as the Standard Template Library (chapters
|
||||
|
@ -130,7 +132,7 @@
|
|||
|
||||
1.6 How do I contribute to the effort?
|
||||
|
||||
Here is [53]a page devoted to this topic. Subscribing to the mailing
|
||||
Here is [54]a page devoted to this topic. Subscribing to the mailing
|
||||
list (see above, or the homepage) is a very good idea if you have
|
||||
something to contribute, or if you have spare time and want to help.
|
||||
Contributions don't have to be in the form of source code; anybody who
|
||||
|
@ -165,11 +167,11 @@
|
|||
extracted into an updated utilities library, but nobody has stated
|
||||
such a project yet.
|
||||
|
||||
(The [54]Boost site houses free C++ libraries that do varying things,
|
||||
(The [55]Boost site houses free C++ libraries that do varying things,
|
||||
and happened to be started by members of the Standards Committee.
|
||||
Certain "useful stuff" classes will probably migrate there.)
|
||||
|
||||
For the bold and/or desperate, the [55]GCC FAQ describes where to find
|
||||
For the bold and/or desperate, the [56]GCC FAQ describes where to find
|
||||
the last libg++ source.
|
||||
_________________________________________________________________
|
||||
|
||||
|
@ -179,16 +181,16 @@
|
|||
remains unanswered, then just ask the mailing list. At present, you do
|
||||
not need to be subscribed to the list to send a message to it. More
|
||||
information is available on the homepage (including how to browse the
|
||||
list archives); to send to the list, use [56]libstdc++@gcc.gnu.org.
|
||||
list archives); to send to the list, use [57]libstdc++@gcc.gnu.org.
|
||||
|
||||
If you have a question that you think should be included here, or if
|
||||
you have a question about a question/answer here, contact [57]Phil
|
||||
Edwards or [58]Gabriel Dos Reis.
|
||||
you have a question about a question/answer here, contact [58]Phil
|
||||
Edwards or [59]Gabriel Dos Reis.
|
||||
_________________________________________________________________
|
||||
|
||||
1.9 What are the license terms for libstdc++-v3?
|
||||
|
||||
See [59]our license description for these and related questions.
|
||||
See [60]our license description for these and related questions.
|
||||
_________________________________________________________________
|
||||
|
||||
2.0 Installation
|
||||
|
@ -205,13 +207,13 @@
|
|||
* The GNU Autotools are needed if you are messing with the configury
|
||||
or makefiles.
|
||||
|
||||
The file [60]documentation.html provides a good overview of the steps
|
||||
The file [61]documentation.html provides a good overview of the steps
|
||||
necessary to build, install, and use the library. Instructions for
|
||||
configuring the library with new flags such as --enable-threads are
|
||||
there also, as well as patches and instructions for working with GCC
|
||||
2.95.
|
||||
|
||||
The top-level install.html and [61]RELEASE-NOTES files contain the
|
||||
The top-level install.html and [62]RELEASE-NOTES files contain the
|
||||
exact build and installation instructions. You may wish to browse
|
||||
those files over CVSweb ahead of time to get a feel for what's
|
||||
required. RELEASE-NOTES is located in the ".../docs/17_intro/"
|
||||
|
@ -228,8 +230,8 @@
|
|||
|
||||
The Concurrent Versions System is one of several revision control
|
||||
packages. It was selected for GNU projects because it's free (speech),
|
||||
free (beer), and very high quality. The [62]CVS entry in the GNU
|
||||
software catalogue has a better description as well as a [63]link to
|
||||
free (beer), and very high quality. The [63]CVS entry in the GNU
|
||||
software catalogue has a better description as well as a [64]link to
|
||||
the makers of CVS.
|
||||
|
||||
The "anonymous client checkout" feature of CVS is similar to anonymous
|
||||
|
@ -280,7 +282,7 @@
|
|||
people don't like it, so here are two pseudo-solutions:
|
||||
|
||||
If the only functions from libstdc++.a which you need are language
|
||||
support functions (those listed in [64]clause 18 of the standard,
|
||||
support functions (those listed in [65]clause 18 of the standard,
|
||||
e.g., new and delete), then try linking against libsupc++.a (usually
|
||||
specifying -lsupc++ when calling g++ for the final link step will do
|
||||
it). This library contains only those support routines, one per object
|
||||
|
@ -336,7 +338,7 @@
|
|||
install GNU as and arrange for the GCC build to use it (or merge the
|
||||
sources and build it during the bootstrap).
|
||||
|
||||
Anyone who [65]knows the DEC assembler well enough to provide the
|
||||
Anyone who [66]knows the DEC assembler well enough to provide the
|
||||
equivalent of these two pseudos would win praise and accolades from
|
||||
many.
|
||||
_________________________________________________________________
|
||||
|
@ -364,7 +366,7 @@
|
|||
include/Makefile, resulting in files like gthr.h and gthr-single.h not
|
||||
being found.
|
||||
|
||||
Please read [66]the configuration instructions for GCC, specifically
|
||||
Please read [67]the configuration instructions for GCC, specifically
|
||||
the part about configuring in a separate build directory, and how
|
||||
strongly recommended it is. Building in the source directory is
|
||||
fragile, is rarely tested, and tends to break, as in this case. This
|
||||
|
@ -378,8 +380,20 @@
|
|||
4.1 What works already?
|
||||
|
||||
This is a verbatim clip from the "Status" section of the RELEASE-NOTES
|
||||
for the latest snapshot.
|
||||
New:
|
||||
for the latest snapshot. For a list of fixed bugs, see that file.
|
||||
New in 3.0.96:
|
||||
---
|
||||
- more doxygen documentation.
|
||||
- extensions moved out of namespace std
|
||||
- HPUX long long support
|
||||
- more string optimizations
|
||||
- support for NetBSD cross compiles
|
||||
- concept_check merge from boost
|
||||
- header simplification
|
||||
- named locale bug shakeout
|
||||
- thread testsuite
|
||||
|
||||
New in 3.0.95:
|
||||
---
|
||||
- add S390, m68k, x86-64 support.
|
||||
- doxygen documentation has been extended, including man pages.
|
||||
|
@ -415,17 +429,17 @@ New:
|
|||
|
||||
4.3 Bugs in the C++ language/lib specification
|
||||
|
||||
Yes, unfortunately, there are some. In a [67]message to the list,
|
||||
Yes, unfortunately, there are some. In a [68]message to the list,
|
||||
Nathan Myers announced that he has started a list of problems in the
|
||||
ISO C++ Standard itself, especially with regard to the chapters that
|
||||
concern the library. The list itself is [68]posted on his website.
|
||||
concern the library. The list itself is [69]posted on his website.
|
||||
Developers who are having problems interpreting the Standard may wish
|
||||
to consult his notes.
|
||||
|
||||
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 [69]here.
|
||||
Some of these have resulted in [70]code changes.
|
||||
public list of the library defects is occasionally published [70]here.
|
||||
Some of these have resulted in [71]code changes.
|
||||
_________________________________________________________________
|
||||
|
||||
4.4 Things in libstdc++ that look like bugs
|
||||
|
@ -458,7 +472,7 @@ New:
|
|||
state on the previous file. The reason is that the state flags are not
|
||||
cleared on a successful call to open(). The standard unfortunately did
|
||||
not specify behavior in this case, and to everybody's great sorrow,
|
||||
the [71]proposed LWG resolution (see DR #22) is to leave the flags
|
||||
the [72]proposed LWG resolution (see DR #22) is to leave the flags
|
||||
unchanged. You must insert a call to fs.clear() between the calls to
|
||||
close() and open(), and then everything will work like we all expect
|
||||
it to work.
|
||||
|
@ -468,14 +482,14 @@ New:
|
|||
same namespace as other comparison functions (e.g., 'using' them and
|
||||
the <iterator> header), then you will suddenly be faced with huge
|
||||
numbers of ambiguity errors. This was discussed on the -v3 list;
|
||||
Nathan Myers [72]sums things up here.
|
||||
Nathan Myers [73]sums things up here.
|
||||
|
||||
The g++-3 headers are not ours
|
||||
|
||||
If you have found an extremely broken header file which is causing
|
||||
problems for you, look carefully before submitting a "high" priority
|
||||
bug report (which you probably shouldn't do anyhow; see the last
|
||||
paragraph of the page describing [73]the GCC bug database).
|
||||
paragraph of the page describing [74]the GCC bug database).
|
||||
|
||||
If the headers are in ${prefix}/include/g++-3, or if the installed
|
||||
library's name looks like libstdc++-2.10.a or libstdc++-libc6-2.10.so,
|
||||
|
@ -485,7 +499,7 @@ New:
|
|||
|
||||
Currently our header files are installed in ${prefix}/include/g++-v3
|
||||
(see the 'v'?). This may change with the next release of GCC, as it
|
||||
may be too confusing, but [74]the question has not yet been decided.
|
||||
may be too confusing, but [75]the question has not yet been decided.
|
||||
|
||||
glibc If you're on a GNU/Linux system and have just upgraded to glibc
|
||||
2.2, but are still using gcc 2.95.2, then you should have read the
|
||||
|
@ -498,7 +512,7 @@ type has changed in glibc 2.2. The patch is at
|
|||
http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
|
||||
|
||||
|
||||
Note that 2.95.x shipped with the [75]old v2 library which is no
|
||||
Note that 2.95.x shipped with the [76]old v2 library which is no
|
||||
longer maintained. Also note that gcc 2.95.3 fixes this problem, but
|
||||
requires a separate patch for libstdc++-v3.
|
||||
|
||||
|
@ -511,23 +525,23 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
|
|||
visibility, or you just plain forgot, etc).
|
||||
|
||||
More information, including how to optionally enable/disable the
|
||||
checks, is available [76]here.
|
||||
checks, is available [77]here.
|
||||
_________________________________________________________________
|
||||
|
||||
4.5 Aw, that's easy to fix!
|
||||
|
||||
If you have found a bug in the library and you think you have a
|
||||
working fix, then send it in! The main GCC site has a page on
|
||||
[77]submitting patches that covers the procedure, but for libstdc++
|
||||
[78]submitting patches that covers the procedure, but for libstdc++
|
||||
you should also send the patch to our mailing list in addition to the
|
||||
GCC patches mailing list. The libstdc++ [78]contributors' page also
|
||||
GCC patches mailing list. The libstdc++ [79]contributors' page also
|
||||
talks about how to submit patches.
|
||||
|
||||
In addition to the description, the patch, and the ChangeLog entry, it
|
||||
is a Good Thing if you can additionally create a small test program to
|
||||
test for the presence of the bug that your patch fixes. Bugs have a
|
||||
way of being reintroduced; if an old bug creeps back in, it will be
|
||||
caught immediately by the [79]testsuite -- but only if such a test
|
||||
caught immediately by the [80]testsuite -- but only if such a test
|
||||
exists.
|
||||
_________________________________________________________________
|
||||
|
||||
|
@ -561,7 +575,7 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
|
|||
libstdc++. Some of that is already happening, see 4.2. Some of
|
||||
those changes are being predicted by the library maintainers, and
|
||||
we add code to the library based on what the current proposed
|
||||
resolution specifies. Those additions are listed in [80]the
|
||||
resolution specifies. Those additions are listed in [81]the
|
||||
extensions page.
|
||||
2. Performance tuning. Lots of performance tuning. This too is
|
||||
already underway for post-3.0 releases, starting with memory
|
||||
|
@ -577,13 +591,13 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
|
|||
type from C99.) Bugfixes and rewrites (to improve or fix thread
|
||||
safety, for instance) will of course be a continuing task.
|
||||
|
||||
[81]This question about the next libstdc++ prompted some brief but
|
||||
interesting [82]speculation.
|
||||
[82]This question about the next libstdc++ prompted some brief but
|
||||
interesting [83]speculation.
|
||||
_________________________________________________________________
|
||||
|
||||
5.3 What about the STL from SGI?
|
||||
|
||||
The [83]STL from SGI, version 3.3, was the most recent merge of the
|
||||
The [84]STL from SGI, version 3.3, was the most recent merge of the
|
||||
STL codebase. The code in libstdc++ contains many fixes and changes,
|
||||
and it is very likely that the SGI code is no longer under active
|
||||
development. We expect that no future merges will take place.
|
||||
|
@ -604,7 +618,7 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
|
|||
#include <ext/hash_map>
|
||||
|
||||
|
||||
Extensions to the library have [84]their own page.
|
||||
Extensions to the library have [85]their own page.
|
||||
_________________________________________________________________
|
||||
|
||||
5.5 [removed]
|
||||
|
@ -653,8 +667,8 @@ a
|
|||
otherwise documented as safe, do not assume that two threads may
|
||||
access a shared standard library object at the same time.
|
||||
|
||||
See chapters [85]17 (library introduction), [86]23 (containers), and
|
||||
[87]27 (I/O) for more information.
|
||||
See chapters [86]17 (library introduction), [87]23 (containers), and
|
||||
[88]27 (I/O) for more information.
|
||||
_________________________________________________________________
|
||||
|
||||
5.7 How do I get a copy of the ISO C++ Standard?
|
||||
|
@ -665,11 +679,11 @@ a
|
|||
their 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 website is
|
||||
right [88]here. (And if you've already registered with them, clicking
|
||||
this link will take you to directly to the place where you can [89]buy
|
||||
right [89]here. (And if you've already registered with them, clicking
|
||||
this link will take you to directly to the place where you can [90]buy
|
||||
the standard on-line.
|
||||
|
||||
Who is your country's member body? Visit the [90]ISO homepage and find
|
||||
Who is your country's member body? Visit the [91]ISO homepage and find
|
||||
out!
|
||||
_________________________________________________________________
|
||||
|
||||
|
@ -720,100 +734,101 @@ a
|
|||
encompasses the standard library.
|
||||
_________________________________________________________________
|
||||
|
||||
See [91]license.html for copying conditions. Comments and suggestions
|
||||
are welcome, and may be sent to [92]the libstdc++ mailing list.
|
||||
See [92]license.html for copying conditions. Comments and suggestions
|
||||
are welcome, and may be sent to [93]the libstdc++ mailing list.
|
||||
|
||||
References
|
||||
|
||||
1. http://gcc.gnu.org/onlinedocs/libstdc++/faq/
|
||||
2. http://gcc.gnu.org/libstdc++/
|
||||
3. ../faq/index.html#1_0
|
||||
4. ../faq/index.html#1_1
|
||||
5. ../faq/index.html#1_2
|
||||
6. ../faq/index.html#1_3
|
||||
7. ../faq/index.html#1_4
|
||||
8. ../faq/index.html#1_5
|
||||
9. ../faq/index.html#1_6
|
||||
10. ../faq/index.html#1_7
|
||||
11. ../faq/index.html#1_8
|
||||
12. ../faq/index.html#1_9
|
||||
13. ../faq/index.html#2_0
|
||||
14. ../faq/index.html#2_1
|
||||
15. ../faq/index.html#2_2
|
||||
16. ../faq/index.html#2_3
|
||||
17. ../faq/index.html#2_4
|
||||
18. ../faq/index.html#2_5
|
||||
19. ../faq/index.html#3_0
|
||||
20. ../faq/index.html#3_1
|
||||
21. ../faq/index.html#3_2
|
||||
22. ../faq/index.html#3_3
|
||||
23. ../faq/index.html#3_4
|
||||
24. ../faq/index.html#4_0
|
||||
25. ../faq/index.html#4_1
|
||||
26. ../faq/index.html#4_2
|
||||
27. ../faq/index.html#4_3
|
||||
28. ../faq/index.html#4_4
|
||||
29. ../faq/index.html#4_4_iostreamclear
|
||||
30. ../faq/index.html#4_4_Weff
|
||||
31. ../faq/index.html#4_4_rel_ops
|
||||
32. ../faq/index.html#4_4_interface
|
||||
33. ../faq/index.html#4_4_glibc
|
||||
34. ../faq/index.html#4_4_checks
|
||||
35. ../faq/index.html#4_5
|
||||
36. ../faq/index.html#5_0
|
||||
37. ../faq/index.html#5_1
|
||||
38. ../faq/index.html#5_2
|
||||
39. ../faq/index.html#5_3
|
||||
40. ../faq/index.html#5_4
|
||||
41. ../faq/index.html#5_5
|
||||
42. ../faq/index.html#5_6
|
||||
43. ../faq/index.html#5_7
|
||||
44. ../faq/index.html#5_8
|
||||
45. http://gcc.gnu.org/libstdc++/download.html
|
||||
46. ../faq/index.html#4_4_interface
|
||||
47. ../17_intro/DESIGN
|
||||
48. http://gcc.gnu.org/
|
||||
49. http://gcc.gnu.org/gcc-2.95/buildstat.html
|
||||
50. http://gcc.gnu.org/libstdc++/
|
||||
51. http://gcc.gnu.org/libstdc++/download.html
|
||||
52. http://gcc.gnu.org/libstdc++/
|
||||
53. ../17_intro/contribute.html
|
||||
54. http://www.boost.org/
|
||||
55. http://gcc.gnu.org/fom_serv/cache/33.html
|
||||
56. mailto:libstdc++@gcc.gnu.org
|
||||
57. mailto:pme@gcc.gnu.org
|
||||
58. mailto:gdr@gcc.gnu.org
|
||||
59. ../17_intro/license.html
|
||||
60. ../documentation.html
|
||||
61. ../17_intro/RELEASE-NOTES
|
||||
62. http://www.gnu.org/software/cvs/cvs.html
|
||||
63. http://www.cvshome.org/
|
||||
64. ../18_support/howto.html
|
||||
65. http://gcc.gnu.org/ml/libstdc++/2000-12/msg00279.html
|
||||
66. http://gcc.gnu.org/install/configure.html
|
||||
67. http://gcc.gnu.org/ml/libstdc++/1998/msg00006.html
|
||||
68. http://www.cantrip.org/draft-bugs.txt
|
||||
69. http://anubis.dkuug.dk/jtc1/sc22/wg21/
|
||||
70. ../faq/index.html#5_2
|
||||
71. ../ext/howto.html#5
|
||||
72. http://gcc.gnu.org/ml/libstdc++/2001-01/msg00247.html
|
||||
73. http://gcc.gnu.org/gnatswrite.html
|
||||
74. http://gcc.gnu.org/ml/gcc/2000-10/msg00732.html
|
||||
75. ../faq/index.html#4_4_interface
|
||||
76. ../19_diagnostics/howto.html#3
|
||||
77. http://gcc.gnu.org/contribute.html
|
||||
78. ../17_intro/contribute.html
|
||||
79. ../faq/index.html#2_4
|
||||
80. ../ext/howto.html#5
|
||||
81. http://gcc.gnu.org/ml/libstdc++/1999/msg00080.html
|
||||
82. http://gcc.gnu.org/ml/libstdc++/1999/msg00084.html
|
||||
83. http://www.sgi.com/Technology/STL/
|
||||
84. ../ext/howto.html
|
||||
85. ../17_intro/howto.html#3
|
||||
86. ../23_containers/howto.html#3
|
||||
87. ../27_io/howto.html#9
|
||||
88. http://www.ansi.org/
|
||||
89. http://webstore.ansi.org/ansidocstore/product.asp?sku=ISO%2FIEC+14882%2D1998
|
||||
90. http://www.iso.ch/
|
||||
91. ../17_intro/license.html
|
||||
92. mailto:libstdc++@gcc.gnu.org
|
||||
2. http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html
|
||||
3. http://gcc.gnu.org/libstdc++/
|
||||
4. ../faq/index.html#1_0
|
||||
5. ../faq/index.html#1_1
|
||||
6. ../faq/index.html#1_2
|
||||
7. ../faq/index.html#1_3
|
||||
8. ../faq/index.html#1_4
|
||||
9. ../faq/index.html#1_5
|
||||
10. ../faq/index.html#1_6
|
||||
11. ../faq/index.html#1_7
|
||||
12. ../faq/index.html#1_8
|
||||
13. ../faq/index.html#1_9
|
||||
14. ../faq/index.html#2_0
|
||||
15. ../faq/index.html#2_1
|
||||
16. ../faq/index.html#2_2
|
||||
17. ../faq/index.html#2_3
|
||||
18. ../faq/index.html#2_4
|
||||
19. ../faq/index.html#2_5
|
||||
20. ../faq/index.html#3_0
|
||||
21. ../faq/index.html#3_1
|
||||
22. ../faq/index.html#3_2
|
||||
23. ../faq/index.html#3_3
|
||||
24. ../faq/index.html#3_4
|
||||
25. ../faq/index.html#4_0
|
||||
26. ../faq/index.html#4_1
|
||||
27. ../faq/index.html#4_2
|
||||
28. ../faq/index.html#4_3
|
||||
29. ../faq/index.html#4_4
|
||||
30. ../faq/index.html#4_4_iostreamclear
|
||||
31. ../faq/index.html#4_4_Weff
|
||||
32. ../faq/index.html#4_4_rel_ops
|
||||
33. ../faq/index.html#4_4_interface
|
||||
34. ../faq/index.html#4_4_glibc
|
||||
35. ../faq/index.html#4_4_checks
|
||||
36. ../faq/index.html#4_5
|
||||
37. ../faq/index.html#5_0
|
||||
38. ../faq/index.html#5_1
|
||||
39. ../faq/index.html#5_2
|
||||
40. ../faq/index.html#5_3
|
||||
41. ../faq/index.html#5_4
|
||||
42. ../faq/index.html#5_5
|
||||
43. ../faq/index.html#5_6
|
||||
44. ../faq/index.html#5_7
|
||||
45. ../faq/index.html#5_8
|
||||
46. http://gcc.gnu.org/libstdc++/download.html
|
||||
47. ../faq/index.html#4_4_interface
|
||||
48. ../17_intro/DESIGN
|
||||
49. http://gcc.gnu.org/
|
||||
50. http://gcc.gnu.org/gcc-2.95/buildstat.html
|
||||
51. http://gcc.gnu.org/libstdc++/
|
||||
52. http://gcc.gnu.org/libstdc++/download.html
|
||||
53. http://gcc.gnu.org/libstdc++/
|
||||
54. ../17_intro/contribute.html
|
||||
55. http://www.boost.org/
|
||||
56. http://gcc.gnu.org/fom_serv/cache/33.html
|
||||
57. mailto:libstdc++@gcc.gnu.org
|
||||
58. mailto:pme@gcc.gnu.org
|
||||
59. mailto:gdr@gcc.gnu.org
|
||||
60. ../17_intro/license.html
|
||||
61. ../documentation.html
|
||||
62. ../17_intro/RELEASE-NOTES
|
||||
63. http://www.gnu.org/software/cvs/cvs.html
|
||||
64. http://www.cvshome.org/
|
||||
65. ../18_support/howto.html
|
||||
66. http://gcc.gnu.org/ml/libstdc++/2000-12/msg00279.html
|
||||
67. http://gcc.gnu.org/install/configure.html
|
||||
68. http://gcc.gnu.org/ml/libstdc++/1998/msg00006.html
|
||||
69. http://www.cantrip.org/draft-bugs.txt
|
||||
70. http://anubis.dkuug.dk/jtc1/sc22/wg21/
|
||||
71. ../faq/index.html#5_2
|
||||
72. ../ext/howto.html#5
|
||||
73. http://gcc.gnu.org/ml/libstdc++/2001-01/msg00247.html
|
||||
74. http://gcc.gnu.org/gnatswrite.html
|
||||
75. http://gcc.gnu.org/ml/gcc/2000-10/msg00732.html
|
||||
76. ../faq/index.html#4_4_interface
|
||||
77. ../19_diagnostics/howto.html#3
|
||||
78. http://gcc.gnu.org/contribute.html
|
||||
79. ../17_intro/contribute.html
|
||||
80. ../faq/index.html#2_4
|
||||
81. ../ext/howto.html#5
|
||||
82. http://gcc.gnu.org/ml/libstdc++/1999/msg00080.html
|
||||
83. http://gcc.gnu.org/ml/libstdc++/1999/msg00084.html
|
||||
84. http://www.sgi.com/Technology/STL/
|
||||
85. ../ext/howto.html
|
||||
86. ../17_intro/howto.html#3
|
||||
87. ../23_containers/howto.html#3
|
||||
88. ../27_io/howto.html#9
|
||||
89. http://www.ansi.org/
|
||||
90. http://webstore.ansi.org/ansidocstore/product.asp?sku=ISO%2FIEC+14882%2D1998
|
||||
91. http://www.iso.ch/
|
||||
92. ../17_intro/license.html
|
||||
93. mailto:libstdc++@gcc.gnu.org
|
||||
|
|
Loading…
Add table
Reference in a new issue