footer.html: Update to see if it takes effect.

2000-05-03  Phil Edwards  <pme@sourceware.cygnus.com>
            Felix Natter <fnatter@gmx.net>

	* docs/footer.html:  Update to see if it takes effect.
	* docs/thanks.html:  More people.
	* docs/17_intro/headers_cc.txt:  Copy from testsuite, since that can't
	  be seen from the web pages.  Rename for browser-friendliness...
	* docs/17_intro/howto.html:  ...and update here.
	* docs/17_intro/porting-howto.html:  Changes from Felix.
	* docs/gccrebuild.html:  Mention v3->egcs move.
	* docs/faq/index.html:  Ditto.  Also misc tweaks and URL updates.
	* docs/faq/index.txt:  Regenerate.

Co-Authored-By: Felix Natter <fnatter@gmx.net>

From-SVN: r33631
This commit is contained in:
Phil Edwards 2000-05-03 16:11:03 +00:00 committed by Phil Edwards
parent 1920de4701
commit 754ac8f7b2
9 changed files with 342 additions and 160 deletions

View file

@ -1,3 +1,16 @@
2000-05-03 Phil Edwards <pme@sourceware.cygnus.com>
Felix Natter <fnatter@gmx.net>
* docs/footer.html: Update to see if it takes effect.
* docs/thanks.html: More people.
* docs/17_intro/headers_cc.txt: Copy from testsuite, since that can't
be seen from the web pages. Rename for browser-friendliness...
* docs/17_intro/howto.html: ...and update here.
* docs/17_intro/porting-howto.html: Changes from Felix.
* docs/gccrebuild.html: Mention v3->egcs move.
* docs/faq/index.html: Ditto. Also misc tweaks and URL updates.
* docs/faq/index.txt: Regenerate.
2000-05-01 Benjamin Kosnik <bkoz@redhat.com>
* config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More

View file

@ -0,0 +1,83 @@
// 1999-05-12 bkoz
// Copyright (C) 1999 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
// terms of the GNU General Public License as published by the
// Free Software Foundation; either version 2, or (at your option)
// any later version.
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License along
// with this library; see the file COPYING. If not, write to the Free
// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
// 17.4.1.2 Headers
// "C++" headers
#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector>
// "C" headers
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
// "C" headers that might not work if wchar_t support is disabled.
#include <bits/c++config.h>
#if _GLIBCPP_USE_WCHAR_T
#include <cwchar>
#include <cwctype>
#endif
int main() { }

View file

@ -9,7 +9,7 @@
<TITLE>libstdc++-v3 HOWTO: Chapter 17</TITLE>
<LINK REL="home" HREF="http://sourceware.cygnus.com/libstdc++/docs/18_support/">
<LINK REL=StyleSheet HREF="../lib3styles.css">
<!-- $Id: howto.html,v 1.1 2000/04/21 20:33:31 bkoz Exp $ -->
<!-- $Id: howto.html,v 1.2 2000/04/25 06:39:48 bkoz Exp $ -->
</HEAD>
<BODY>
@ -46,7 +46,7 @@
available to you, no matter how.
</P>
<P>The names of the headers can be easily seen in
<A HREF="../testsuite/17_intro/headers.cc">this source code</A>,
<A HREF="headers_cc.txt"><TT>testsuite/17_intro/headers.cc</TT></A>,
which is a small testbed we use to make certain that the headers
all compile and run.
</P>
@ -147,7 +147,7 @@
Comments and suggestions are welcome, and may be sent to
<A HREF="mailto:pme@sourceware.cygnus.com">Phil Edwards</A> or
<A HREF="mailto:gdr@egcs.cygnus.com">Gabriel Dos Reis</A>.
<BR> $Id: howto.html,v 1.1 2000/04/21 20:33:31 bkoz Exp $
<BR> $Id: howto.html,v 1.2 2000/04/25 06:39:48 bkoz Exp $
</EM></P>

View file

@ -15,9 +15,18 @@
<li><a href = "#nocreate">File-flags: <tt>ios::nocreate</tt> and
<tt>ios::noreplace</tt></a>
<li><a href = "#headers">The new headers</a>
<li><a href = "#iterators">Iterator-changes</a>
<li><a href = "#macros">Libc-macros</a>
<li><a href = "#about">Comments, suggestions, corrections, questions...</a>
</center>
<p>
In the following, when I say portable, I will refer to "portable among ISO
14882-implementations". On the other hand, if I say "backportable" or
"conservative", I am talking about "compiles with older
libstdc++-implementations".
</p>
<a name = "std">
<h2>Namespace std::</h2>
</a>
@ -25,29 +34,40 @@
The latest C++-standard (ISO-14882) requires that the standard C++-library
is defined in namespace std::. Thus, to use classes from the standard c++
library, you can do one of three things:
<ul>
<li>wrap your code in <tt>namespace std { ... }</tt>
=> This is not an option because only symbols from the standard c++-library are
defined in namespace std::.
<li>put a kind of <dfn>using-declaration</dfn> in your source
(either <tt>using namespace std;</tt> or i.e. <tt>using std::string;</tt>)
=> works well for source-files, but cannot be used in header-files
<li>use a <dfn>fully qualified name</dfn> for each libstdc++-symbol
(i.e. <tt>std::string</tt>, <tt>std::cout</tt>)
=> can always be used
</ul>
<ul>
<li>wrap your code in <tt>namespace std { ... }</tt> => This is not an
option because only symbols from the standard c++-library are defined in
namespace std::.
<li>put a kind of <dfn>using-declaration</dfn> in your source (either
<tt>using namespace std;</tt> or i.e. <tt>using std::string;</tt>)
=> works well for source-files, but cannot be used in header-files
<li>use a <dfn>fully qualified name</dfn> for each libstdc++-symbol
(i.e. <tt>std::string</tt>, <tt>std::cout</tt>) => can always be used
</ul>
</p>
<p>
Because there are many compilers which still use an implementation that
does not have the standard C++-library in namespace <tt>std::</tt>, some
care is required to support these as well.
</p>
<p>
Namespace back-portability-issues are generally not a problem with g++,
because versions of g++ that do not have libstdc++ in <tt>std::</tt> use
<tt>-fno-honor-std</tt> (ignore <tt>std::</tt>, <tt>:: = std::</tt>) by
default. That is, the responsibility for enabling or disabling
<tt>std::</tt> is on the user; the maintainer does not have to care about it.
This probably applies to some other compilers as well.
</p>
<p>
Namespace portability-issues are not a problem with g++, because versions
of g++ that do not have libstdc++ in std:: use <tt>-fno-honor-std</tt>
(ignore <tt>std::</tt>, <tt>:: = std::</tt>) by default. This probably
applies to some other compilers as well.
The following sections list some possible solutions to support compilers
that cannot ignore std::.
</p>
<a name = "gtkmm">
<h3>Using <dfn>namespace composition</dfn> if the project uses a separate
namespace</h3>
</a>
<p>
<a href = "http://gtkmm.sourcforge.net">Gtk--</a> defines most of its
@ -55,8 +75,7 @@ classes in namespace Gtk::. Thus, it was possible to adapt Gtk-- to
namespace std:: by using a C++-feature called <dfn>namespace
composition</dfn>. This is what happens if you put a
<dfn>using</dfn>-declaration into a namespace-definition: the imported
symbol(s) gets imported into the currently active namespace(s). This is
what it looks like in Gtk--:
symbol(s) gets imported into the currently active namespace(s). For example:
<pre>
namespace Gtk {
using std::string;
@ -64,16 +83,23 @@ namespace Gtk {
}
</pre>
In this example, <tt>std::string</tt> gets imported into namespace Gtk::.
The result is that you don't have to use <tt>std::string</tt> in this header,
but still <tt>std::string</tt> does not get imported into user-space (the
global namespace ::) unless the user does <tt>using namespace Gtk;</tt>
(which is not recommended practice for Gtk--, so it is not a problem).
The result is that you don't have to use <tt>std::string</tt> in this
header, but still <tt>std::string</tt> does not get imported into
user-space (the global namespace ::) unless the user does <tt>using
namespace Gtk;</tt> (which is not recommended practice for Gtk--, so it is
not a problem). Additionally, the <tt>using</tt>-declarations are wrapped
in macros that are set based on autoconf-tests to either "" or
i.e. <tt>using std::string;</tt> (depending on whether the system has
libstdc++ in <tt>std::</tt> or not).
(ideas from llewelly@dbritsch.dsl.xmission.com,
Karl Nelson <kenelson@ece.ucdavis.edu>)
</p>
<h3>Defining an empty namespace std for backwards-compatibility</h3>
<h3>Defining an empty namespace std</h3>
<p>
By defining an (empty) namespace std:: before using it, you can avoid
getting errors on systems where no part of the library is in std:
By defining an (empty) namespace <tt>std::</tt> before using it, you can
avoid getting errors on systems where no part of the library is in
namespace std:
<pre>
namespace std { }
using namespace std;
@ -82,12 +108,12 @@ using namespace std;
<h3>Avoid to use fully qualified names (i.e. std::string)</h3>
<p>
If some compilers complain about <tt>using std::string;</tt>, and if the
hack for gtk-- mentioned above does not work, then it might be a good idea
"hack" for gtk-- mentioned above does not work, then it might be a good idea
to define a macro <tt>NS_STD</tt>, which is defined to either "" or "std"
based on an autoconf-test. Then you should be able to use
<tt>NS_STD::string</tt>, which will evaluate to <tt>::string</tt> ("string
in the global namespace") on systems that do not put string in std::.
(This is untested and might not even be necessary)
(This is untested)
</p>
<h3>How some open-source-projects deal with this</h3>
@ -103,7 +129,7 @@ in the global namespace") on systems that do not put string in std::.
<tr><td><a href = "http://www.mnemonic.org">mnemonic</a></td> <td>none</td>
</tr>
<tr><td><a href = "http://libsigc.sourceforge.net">libsigc++</a></td>
<td>portable-impl</td>
<td>conservative-impl</td>
</tr>
</table>
@ -117,11 +143,14 @@ in the global namespace") on systems that do not put string in std::.
<td>none</td> <td>no namespace std at all</td>
</tr>
<tr>
<td>portable-impl</td> <td>wrap all namespace-handling in macros to support
compilers without namespace-support (no libstdc++ used in headers)</td>
<td>conservative-impl</td> <td>wrap all namespace-handling in macros to
support compilers without namespace-support (no libstdc++ used in
headers)</td>
</tr>
</table>
As you can see, this currently lacks an example of a project which uses
libstdc++-symbols in headers in a back-portable way
(except for the <a href = "#gtkmm">Gtk-- "hack"</a>).
</p>
<a name = "nocreate">
<h2>there is no ios::nocreate/ios::noreplace in ISO 14882</h2>
@ -136,7 +165,8 @@ input-streams.
For output streams, "nocreate" is probably the default, unless you specify
<tt>std::ios::trunc</tt> ? To be safe, you can open the file for
reading, check if it has been opened, and then decide whether you want to
create/replace or not.
create/replace or not. To my knowledge, even older implementations support
<tt>app</tt>, <tt>ate</tt> and <tt>trunc</tt> (except for <tt>app</tt> ?).
</p>
<a name = "attach">
<h2><tt>stream::attach(int fd)</tt> is not in the standard any more</h2>
@ -166,32 +196,108 @@ headers and tell users of old compilers that they should create links
(which is what they will have to do sometime anyway).
</p>
<h3><tt>&lt;ctype.h&gt;</tt> introduces ambiguity when used with
<tt>&lt;cctype&gt;</tt></h3>
<p>
The best solution I came up with so far is to include <tt>cctype</tt>
instead of <tt>ctype.h</tt> wherever possible, and then use fully
qualified names to refer to the libstdc++-versions: std::islower,
std::isalnum etc. (you will need to as soon as any header includes
<tt>&lt;ctype.h&gt;</tt>, because then there will be an ambiguity with the
C-versions in the global namespace defined in <tt>&lt;ctype.h&gt;</tt>)
<a name = "cheaders">
<h3>New headers replacing C-headers</h3>
</a>
<p>
You should not use the C-headers (except for system-level headers) from C++
programs. Instead, you should use a set of headers that are named by
prepending 'c' and, as usual, ommiting the extension (.h). For example,
instead of using <tt>&lt;math.h&gt;</tt>, you should use
<tt>&lt;cmath&gt;</tt>. The standard specifies that if you include the
C-style header (<tt>&lt;math.h&gt;</tt> in this case), the symbols will be
available both in the global namespace and in namespace <tt>std::</tt>
(libstdc++-v3, version 2.90.8 currently puts them in <tt>std::</tt> only)
On the other hand, if you include only the new header
(i.e. <tt>&lt;cmath&gt;</tt>), the symbols will only be defined in
namespace <tt>std::</tt> (and macros will be converted to
inline-functions).
</p>
<p>
For more information on this, and for information on how the GNU C++
implementation reuses ("shadows") the C library-functions, have
a look at <a href = "http://www.cantrip.org/cheaders.html">www.cantrip.org</a>.
</p>
<h3><tt>&lt;fstream&gt;</tt> does not define <tt>std::cout</tt>,
<tt>std::cin</tt> etc.</h3>
<p>
In previous versions of the standard, <tt>&lt;fstream.h&gt;</tt>,
<tt>&lt;ostream.h&gt;</tt> and <tt>&lt;istream.h&gt;</tt> used to define
<tt>cout</tt>, <tt>cin</tt> and so on. With libstdc++-v3, you need
to include <tt>&lt;iostream&gt;</tt> to define these.
<tt>cout</tt>, <tt>cin</tt> and so on. Because of the templatized iostreams
in libstdc++-v3, you need to include <tt>&lt;iostream&gt;</tt> explicitly
to define these.
</p>
<a name = "iterators">
<h2>Iterators</h2>
</a>
<p>
The following are not proper uses of iterators, but may be working fixes
for existing uses of iterators.
<ul>
<li>you cannot do <tt>ostream::operator<<(iterator)</tt> to print the
address of the iterator => use <tt><< &*iterator</tt> instead ?
<li>you cannot clear an iterator's reference (<tt>iterator = 0</tt>)
=> use <tt>iterator = iterator_type();</tt> ?
<li><tt>if (iterator)</tt> won't work any more
=> use <tt>if (iterator != iterator_type())</tt> ?
</ul>
</p>
<a name = "macros">
<h2>Libc-macros (i.e. <tt>isspace</tt> from <tt>&lt;cctype&gt;</tt>)</h2>
</a>
<p>
Glibc 2.0.x and 2.1.x define the <tt>&lt;ctype.h&gt;</tt>-functionality
as macros (isspace, isalpha etc.). Libstdc++-v3 "shadows" these macros
as described in the <a href = "#cheaders">section on C-headers</a>.
</p>
<p>
Older implementations of libstdc++ (g++-2 for egcs 1.x and g++-3 for
gcc 2.95.2), however, keep these functions as macros, and so it is not
back-portable to use fully qualified names. For example:
<pre>
#include &lt;cctype&gt;
int main() { std::isspace('X'); }
</pre>
will result in something like this (unless using g++-v3):
<pre>
std:: (__ctype_b[(int) ( ( 'X' ) )] & (unsigned short int) _ISspace ) ;
</pre>
Another problem arises if you put a <tt>using namespace std;</tt>
declaration at the top, and include <tt>&lt;ctype.h&gt;</tt>. This will
result in ambiguities between the definitions in the global namespace
(<tt>&lt;ctype.h&gt;</tt>) and the definitions in namespace <tt>std::</tt>
(<tt>&lt;cctype&gt;</tt>).
</p>
<p>
One solution I can think of is to test for -v3 using autoconf-macros, and
define macros for each of the C-functions (maybe that is possible with one
"wrapper" macro as well ?).
</p>
<p>
Another solution which would fix g++ is to tell the user to modify
a header-file so that g++-2 (egcs 1.x) and g++-3 (gcc 2.95.2)
enable a macro which tells &lt;ctype.h&gt; to define functions instead of
macros:
<pre>
// This keeps isanum, et al from being propagated as macros.
#if __linux__
#define __NO_CTYPE 1
#endif
[ now include &lt;ctype.h&gt; ]
</pre>
</p>
<a name = "about">
<h2>About...</h2>
</a>
<p>
Please send any experience, additions, corrections or questions to <a href =
"mailto:fnatter@gmx.net">fnatter@gmx.net</a> or for discussion to
the libstdc++-v3-mailing-list.
Please send any experience, additions, corrections or questions to <a href
= "mailto:fnatter@gmx.net">fnatter@gmx.net</a> or for discussion to the
libstdc++-v3-mailing-list.
</p>
</body>

View file

@ -13,7 +13,7 @@
** Locations of "the most recent snapshot is the Nth" text are
** answers 1_1, 1_4, 4_1, 5_6.
-->
<!-- $Id: index.html,v 1.21 2000/03/26 03:44:35 pme Exp $ -->
<!-- $Id: index.html,v 1.1 2000/04/21 20:33:32 bkoz Exp $ -->
</HEAD>
<BODY>
@ -106,7 +106,7 @@ HREF="ftp://sourceware.cygnus.com/pub/libstdc++/libstdc++-2.90.8.tar.gz">the
<HR>
<H2><A NAME="1_2">1.2 Why should I use libstdc++?</A></H2>
<P>The recent completion of the ISO C++ standardization gave the
<P>The completion of the ISO C++ standardization gave the
C++ community a powerful set of reuseable tools in the form
of the C++ Standard Library. However, all existing C++
implementations are (as the Draft Standard used to say)
@ -117,10 +117,10 @@ HREF="ftp://sourceware.cygnus.com/pub/libstdc++/libstdc++-2.90.8.tar.gz">the
(<TT>gcc</TT>, <TT>g++</TT>, etc) is widely considered to be
one of the leading compilers in the world. Its development
has recently been taken over by the
<A HREF="http://egcs.cygnus.com/">GCC team</A>. All of
<A HREF="http://gcc.gnu.org/">GCC team</A>. All of
the rapid development and near-legendary
<A
HREF="http://egcs.cygnus.com/gcc-2.95/buildstat.html">portability</A>
HREF="http://gcc.gnu.org/gcc-2.95/buildstat.html">portability</A>
that are the hallmarks of an open-source project are being
applied to libstdc++.
</P>
@ -214,7 +214,7 @@ HREF="ftp://sourceware.cygnus.com/pub/libstdc++/libstdc++-2.90.8.tar.gz">
stuff&quot; classes will probably migrate there.)
</P>
<P>For the bold and/or desperate, the
<A HREF="http://egcs.cygnus.com/faq.html#libg++">GCC FAQ</A>
<A HREF="http://gcc.gnu.org/faq.html#libg++">GCC FAQ</A>
describes where to find the last libg++ source.
</P>
@ -271,32 +271,13 @@ HREF="http://sourceware.cygnus.com/automake/">automake</A>.
<P>Yes, as of 2.90.8, it is intended as such.</P>
<P>The installation instructions cover this in more detail, but
replacing the older library requires rebuilding some of the
code that comes with g++. If you do not want to do that,
then you'll be missing out on a lot of functionality, but it
can still be done.
code that comes with g++. You will need sources for the 2.95.2
compiler in order to build this snapshot. Building the library
on its own and then using -I/-L will no longer work.
</P>
<P>In that case, you can use the same procedure that used to be
required:
<OL>
<LI> Build GCC as usual.
<LI> Build libstdc++-v3 as described in the installation
document, under the section &quot;without GCC
sources.&quot; Be aware that you will lose the std::
namespace encapsulation.
<LI> Build your code using -I and -L options so that GCC
finds the libstdc++-v3 headers and library before the
older headers in the GCC include tree.
</OL>
</P>
<P>If you configured libstdc++-v3 to install under a directory
called <B>/lib3</B>, for example, the command line would look
something like
<!-- Careful, the leading spaces in PRE show up directly. -->
<PRE>
g++ -Wall -I/lib3/include/g++-v3 -L/lib3/lib foo.cc -o foo
</PRE>
More information (such as using SGI or GNU extensions, and
setting the runtime library path) can be found in the RELEASE-NOTES.
<P>After the 2.90.8 snapshot, the library sources were integrated
into the compiler sources. Future releases of the compiler will
ship with libstdc++-v3.
</P>
<HR>
@ -511,7 +492,7 @@ to the list</A>, Nathan Myers announced that he has started a list of
<H2><A NAME="4_5">4.5 Aw, that's easy to fix!</A></H2>
<P>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 <A HREF="http://egcs.cygnus.com/contribute.html">submitting
on <A HREF="http://gcc.gnu.org/contribute.html">submitting
patches</A> that covers the procedure, but for libstdc++ you
should of course send the patch to our mailing list, not the
GCC mailing list. The libstdc++
@ -664,7 +645,7 @@ HREF="http://sourceware.cygnus.com/ml/libstdc++/1999/msg00084.html">speculation<
Comments and suggestions are welcome, and may be sent to
<A HREF="mailto:pme@sourceware.cygnus.com">Phil Edwards</A> or
<A HREF="mailto:gdr@egcs.cygnus.com">Gabriel Dos Reis</A>.
<BR> $Id: index.html,v 1.21 2000/03/26 03:44:35 pme Exp $
<BR> $Id: index.html,v 1.1 2000/04/21 20:33:32 bkoz Exp $
</EM></P>

View file

@ -65,11 +65,11 @@
1.2 Why should I use libstdc++?
The recent completion of the ISO C++ standardization gave the C++
community a powerful set of reuseable tools in the form of the C++
Standard Library. However, all existing C++ implementations are (as
the Draft Standard used to say) "incomplet and incorrekt," and many
suffer from limitations of the compilers that use them.
The completion of the ISO C++ standardization gave the C++ community a
powerful set of reuseable tools in the form of the C++ Standard
Library. However, all existing C++ implementations are (as the Draft
Standard used to say) "incomplet and incorrekt," and many suffer from
limitations of the compilers that use them.
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
@ -206,25 +206,13 @@
The installation instructions cover this in more detail, but replacing
the older library requires rebuilding some of the code that comes with
g++. If you do not want to do that, then you'll be missing out on a
lot of functionality, but it can still be done.
g++. You will need sources for the 2.95.2 compiler in order to build
this snapshot. Building the library on its own and then using -I/-L
will no longer work.
In that case, you can use the same procedure that used to be required:
1. Build GCC as usual.
2. Build libstdc++-v3 as described in the installation document,
under the section "without GCC sources." Be aware that you will
lose the std:: namespace encapsulation.
3. Build your code using -I and -L options so that GCC finds the
libstdc++-v3 headers and library before the older headers in the
GCC include tree.
If you configured libstdc++-v3 to install under a directory called
/lib3, for example, the command line would look something like
g++ -Wall -I/lib3/include/g++-v3 -L/lib3/lib foo.cc -o foo
More information (such as using SGI or GNU extensions, and setting the
runtime library path) can be found in the RELEASE-NOTES.
After the 2.90.8 snapshot, the library sources were integrated into
the compiler sources. Future releases of the compiler will ship with
libstdc++-v3.
_________________________________________________________________
2.3 What is this CVS thing that you keep mentioning?
@ -533,71 +521,71 @@ count(struct __rb_tree_node_base *, struct __rb_tree_node_base *)'
Comments and suggestions are welcome, and may be sent to [71]Phil
Edwards or [72]Gabriel Dos Reis.
$Id: index.txt,v 1.17 2000/03/26 03:44:35 pme Exp $
$Id: index.html,v 1.1 2000/04/21 20:33:32 bkoz Exp $
References
1. http://sourceware.cygnus.com/libstdc++/
2. http://sourceware.cygnus.com/libstdc++/faq/index.html
3. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/index.html
4. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_0
5. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_1
6. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_2
7. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_3
8. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_4
9. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_5
10. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_6
11. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_7
12. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#1_8
13. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#2_0
14. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#2_1
15. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#2_2
16. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#2_3
17. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#2_4
18. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#3_0
19. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#3_1
20. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#3_2
21. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#4_0
22. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#4_1
23. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#4_2
24. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#4_3
25. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#4_4
26. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#4_5
27. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_0
28. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_1
29. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_2
30. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_3
31. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_4
32. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_5
33. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_6
34. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#5_7
3. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/index.html
4. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_0
5. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_1
6. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_2
7. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_3
8. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_4
9. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_5
10. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_6
11. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_7
12. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#1_8
13. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#2_0
14. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#2_1
15. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#2_2
16. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#2_3
17. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#2_4
18. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#3_0
19. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#3_1
20. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#3_2
21. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#4_0
22. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#4_1
23. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#4_2
24. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#4_3
25. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#4_4
26. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#4_5
27. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_0
28. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_1
29. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_2
30. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_3
31. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_4
32. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_5
33. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_6
34. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#5_7
35. ftp://sourceware.cygnus.com/pub/libstdc++/libstdc++-2.90.8.tar.gz
36. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/17_intro/DESIGN
37. http://egcs.cygnus.com/
38. http://egcs.cygnus.com/gcc-2.95/buildstat.html
39. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/index.html
36. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/17_intro/DESIGN
37. http://gcc.gnu.org/
38. http://gcc.gnu.org/gcc-2.95/buildstat.html
39. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/index.html
40. ftp://sourceware.cygnus.com/pub/libstdc++/libstdc++-2.90.8.tar.gz
41. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/index.html
41. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/index.html
42. http://www.deja.com/getdoc.xp?AN=469581698&fmt=text
43. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/17_intro/contribute.html
43. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/17_intro/contribute.html
44. http://www.boost.org/
45. http://egcs.cygnus.com/faq.html#libg++
45. http://gcc.gnu.org/faq.html#libg++
46. mailto:libstdc++@sourceware.cygnus.com
47. mailto:pme@sourceware.cygnus.com
48. mailto:gdr@egcs.cygnus.com
49. http://sourceware.cygnus.com/autoconf/
50. http://sourceware.cygnus.com/automake/
51. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/documentation.html
52. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/17_intro/RELEASE-NOTES
51. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/documentation.html
52. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/17_intro/RELEASE-NOTES
53. http://www.gnu.org/software/cvs/cvs.html
54. http://www.cyclic.com/
55. http://www.xraylith.wisc.edu/~khan/software/gnu-win32/libstdc++-v3.html
56. file://localhost/ml/libstdc++/1998/msg00006.html
57. http://www.cantrip.org/draft-bugs.txt
58. http://anubis.dkuug.dk/jtc1/sc22/wg21/
59. http://egcs.cygnus.com/contribute.html
60. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/17_intro/contribute.html
61. file://localhost/home0/pedwards/EGCS/gcc-2.95.2/libstdc++-v3/docs/faq/index.html#2_4
59. http://gcc.gnu.org/contribute.html
60. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/17_intro/contribute.html
61. file://localhost/home0/pedwards/src/egcsworking/libstdc++-v3/docs/faq/index.html#2_4
62. http://sourceware.cygnus.com/ml/libstdc++/1999/msg00080.html
63. http://sourceware.cygnus.com/ml/libstdc++/1999/msg00084.html
64. http://www.sgi.com/Technology/STL/

View file

@ -9,8 +9,8 @@
These pages are stoically maintained by
<A HREF="mailto:pme@sourceware.cygnus.com">Phil Edwards</a>, who might now
actually be able to maintain them as the directory structure is slowly
congealing into some kind of permanent structure, and was last modified on
2000-03-24.
congealing into some kind of permanent structure, and were last modified on
2000-04-29.
</EM></P>
<!-- And this closes everything out. -->

View file

@ -9,7 +9,7 @@
<TITLE>How to automatically rebuild libgcc.a.</TITLE>
<LINK REL="home" HREF="http://sourceware.cygnus.com/libstdc++/">
<LINK REL=StyleSheet HREF="lib3styles.css">
<!-- $Id: gccrebuild.html,v 1.1 2000/01/14 20:03:09 pme Exp $ -->
<!-- $Id: gccrebuild.html,v 1.1 2000/04/21 20:33:30 bkoz Exp $ -->
</HEAD>
<BODY>
@ -39,7 +39,10 @@
as <EM>objdir</EM>; here it will be called <EM>GCCobjdir</EM>.
</P>
<P>This is a kludge, and will go away eventually.</P>
<P>This is a kludge, and will go away eventually. (In a sense, it has
already gone away, as the library sources have been merged into the
compiler sources.)
</P>
<HR>
@ -111,7 +114,7 @@
<HR>
<P CLASS="fineprint"><EM>
$Id: gccrebuild.html,v 1.1 2000/01/14 20:03:09 pme Exp $
$Id: gccrebuild.html,v 1.1 2000/04/21 20:33:30 bkoz Exp $
</EM></P>

View file

@ -17,7 +17,7 @@
Please keep this list in alphabetical order.
<!--
Latest update 2000-03-09, more or less.
Latest update 2000-04-29, more or less.
-->
<UL>
@ -56,7 +56,8 @@
<LI>Benjamin Kosnik for, well, everything.
<LI>Martin v. Loewis for namespace patches and fixes.
<LI>Martin v. Loewis for namespace patches and fixes, and tons of
assistance with the compiler merges.
<LI>Philip Martin for lots of string and vector iterator fixes and
improvements, and string clean up and testsuites.
@ -71,7 +72,10 @@
<LI>Nathan Myers for inflicting locales on the rest of us, working on
iostream, string and string documentation (!), fixing that
__black_count loop that so many people bugged us about, and creating
the initial documentation (DESIGN, CHECKLIST, and so forth).
the initial documentation (DESIGN, CHECKLIST, and so forth). Huge
chunks of the MT-safe code are also due to his work.
<LI>Felix Natter for documentation on porting.
<LI>Chip Salzenberg for patches and improvements to locales, traits,
Makefiles, libio, libtool hackery, and &quot;long long&quot; support.
@ -84,11 +88,15 @@
</UL></P>
<P>We'd also like to thank the folks who have contributed time and
energy in testing libstdc++-v3:
energy in testing libstdc++-v3, especially those sending in testsuite
evaluations:
<UL>
<LI>Folks for sending in testsuite evaluations.
<LI>J&uuml;rgen Freyh
<LI>llewelly <!-- Honest, that's the only name in the messages. -->
<LI>Loren James Rittle
<LI>George Talbot
</UL></P>