Commit 777c9517 by Phil Edwards

configopts.html: Minor updates and typo fixes.

2001-02-15  Phil Edwards  <pme@sources.redhat.com>

	* docs/html/configopts.html:  Minor updates and typo fixes.
	* docs/html/faq/index.html:  Updates of the "not really bugs" list.
	* docs/html/faq/index.txt:  Regenerated.

From-SVN: r39727
parent 6472877a
2001-02-15 Phil Edwards <pme@sources.redhat.com>
* docs/html/configopts.html: Minor updates and typo fixes.
* docs/html/faq/index.html: Updates of the "not really bugs" list.
* docs/html/faq/index.txt: Regenerated.
2001-02-15 Gabriel Dos Reis <gdr@codesourcery.com> 2001-02-15 Gabriel Dos Reis <gdr@codesourcery.com>
* testsuite/lib/libstdc++.exp: Lift, temporarily, out of * testsuite/lib/libstdc++.exp: Lift, temporarily, out of
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<META NAME="GENERATOR" CONTENT="vi and eight fingers"> <META NAME="GENERATOR" CONTENT="vi and eight fingers">
<TITLE>libstdc++-v3 configure options</TITLE> <TITLE>libstdc++-v3 configure options</TITLE>
<LINK REL=StyleSheet HREF="lib3styles.css"> <LINK REL=StyleSheet HREF="lib3styles.css">
<!-- $Id: configopts.html,v 1.5 2001/01/30 09:18:50 bkoz Exp $ --> <!-- $Id: configopts.html,v 1.6 2001/02/07 00:03:20 pme Exp $ -->
</HEAD> </HEAD>
<BODY> <BODY>
...@@ -66,7 +66,7 @@ options</A></H1> ...@@ -66,7 +66,7 @@ options</A></H1>
I/O package (from I/O package (from
<A HREF="http://sources.redhat.com/glibc/">glibc</A>, the <A HREF="http://sources.redhat.com/glibc/">glibc</A>, the
GNU C library), or 'stdio' to use a generic &quot;C&quot; GNU C library), or 'stdio' to use a generic &quot;C&quot;
abstraction. The default is 'stdio'. abstraction. The default is 'stdio'.
</P> </P>
<DT><TT>--enable-clocale </TT> <DT><TT>--enable-clocale </TT>
...@@ -81,7 +81,7 @@ options</A></H1> ...@@ -81,7 +81,7 @@ options</A></H1>
HREF="http://sources.redhat.com/glibc/">glibc</A>, the GNU C HREF="http://sources.redhat.com/glibc/">glibc</A>, the GNU C
library), or 'generic' to use a generic &quot;C&quot; library), or 'generic' to use a generic &quot;C&quot;
abstraction which consists of &quot;C&quot; locale info. abstraction which consists of &quot;C&quot; locale info.
The default is 'generic'. The default is 'generic'.
</P> </P>
<DT><TT>--enable-long-long </TT> <DT><TT>--enable-long-long </TT>
...@@ -98,10 +98,9 @@ options</A></H1> ...@@ -98,10 +98,9 @@ options</A></H1>
<DT><TT>--enable-cheaders=OPTION </TT> <DT><TT>--enable-cheaders=OPTION </TT>
<DD><P>This allows the user to define what kind of C headers are <DD><P>This allows the user to define what kind of C headers are
used. Options are: c, c_std, and c_shadow. These correspond used. Options are: c, c_std, and c_shadow. These correspond
to the source directory's include/c, include/c_std, and to the source directory's include/c, include/c_std, and
include/c_shadow directories. include/c_shadow directories. The default is c_std.
The default is c_std.
</P> </P>
<DT><TT>--enable-threads </TT> <DT><TT>--enable-threads </TT>
...@@ -151,25 +150,24 @@ options</A></H1> ...@@ -151,25 +150,24 @@ options</A></H1>
flags to the compiler to use when building libstdc++. FLAGS flags to the compiler to use when building libstdc++. FLAGS
is a quoted string of options, like is a quoted string of options, like
<PRE> <PRE>
--enable-cxx-flags='-fsquangle -fvtable-gc -ansi'</PRE> --enable-cxx-flags='-fvtable-gc -fomit-frame-pointer -ansi'</PRE>
Note that the flags don't necessarily have to all be -f flags, Note that the flags don't necessarily have to all be -f flags,
as shown, but usually those are the ones that will make sense as shown, but usually those are the ones that will make sense
for experimentation and configure-time overriding. for experimentation and configure-time overriding.
</P> </P>
<P>The advantage of --enable-cxx-flags over setting CXXFLAGS in <P>The advantage of --enable-cxx-flags over setting CXXFLAGS in
the 'make' environment is that, if libgcc is automatically the 'make' environment is that, if files are automatically
rebuilt, the same flags will be used when compiling those files rebuilt, the same flags will be used when compiling those files
as well, so that everything matches. as well, so that everything matches.
</P> </P>
<P>Fun flags to try might include combinations of <P>Fun flags to try might include combinations of
<PRE> <PRE>
-fstrict-aliasing -fstrict-aliasing
-fnew-abi -fno-exceptions
-fnew-exceptions
-ffunction-sections -ffunction-sections
-fvtable-gc</PRE> -fvtable-gc</PRE>
and -fno- forms of the same. Tell us (the mailing list) if and opposite forms (-fno-) of the same. Tell us (the mailing
you discover more! list) if you discover more!
</P> </P>
<DT><TT>--enable-c-mbchar </TT>[default] <DT><TT>--enable-c-mbchar </TT>[default]
...@@ -178,7 +176,7 @@ options</A></H1> ...@@ -178,7 +176,7 @@ options</A></H1>
changing rapidly, and can cause problems on new platforms. changing rapidly, and can cause problems on new platforms.
Disabling wide character specializations is useful for initial Disabling wide character specializations is useful for initial
porting steps, but builds only a subset of what is required by porting steps, but builds only a subset of what is required by
ISO. Default is on, but the <TT>--enable-c_stdio=stdio </TT> ISO. Default is on, but the <TT>--enable-cstdio=stdio </TT>
option currently turns it off. option currently turns it off.
</P> </P>
</DL> </DL>
...@@ -192,7 +190,7 @@ options</A></H1> ...@@ -192,7 +190,7 @@ options</A></H1>
<HR> <HR>
<P CLASS="fineprint"><EM> <P CLASS="fineprint"><EM>
$Id: configopts.html,v 1.5 2001/01/30 09:18:50 bkoz Exp $ $Id: configopts.html,v 1.6 2001/02/07 00:03:20 pme Exp $
</EM></P> </EM></P>
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
** Locations of "the most recent snapshot is the Nth" text are ** Locations of "the most recent snapshot is the Nth" text are
** answers 1_1, 1_4, 4_1, 5_6. ** answers 1_1, 1_4, 4_1, 5_6.
--> -->
<!-- $Id: index.html,v 1.1 2000/12/10 04:04:56 pme Exp $ --> <!-- $Id: index.html,v 1.2 2001/01/23 17:02:27 pme Exp $ -->
</HEAD> </HEAD>
<BODY> <BODY>
...@@ -62,8 +62,14 @@ http://gcc.gnu.org/onlinedocs/libstdc++/faq/</A>.</P> ...@@ -62,8 +62,14 @@ http://gcc.gnu.org/onlinedocs/libstdc++/faq/</A>.</P>
<LI><A HREF="#4_2">Bugs in gcc/g++ (not libstdc++-v3)</A> <LI><A HREF="#4_2">Bugs in gcc/g++ (not libstdc++-v3)</A>
<LI><A HREF="#4_3">Bugs in the C++ language/lib specification</A> <LI><A HREF="#4_3">Bugs in the C++ language/lib specification</A>
<LI><A HREF="#4_4">Things in libstdc++ that look like bugs</A> <LI><A HREF="#4_4">Things in libstdc++ that look like bugs</A>
<BR><A HREF="#4_4_interface">The g++-3 headers are <UL>
<STRONG>not ours</STRONG></A> <LI><A HREF="#4_4_Weff">-Weffc++ complains too much</A>
<LI><A HREF="#4_4_rel_ops">&quot;ambiguous overloads&quot;
after including an old-style header</A>
<LI><A HREF="#4_4_interface">The g++-3 headers are
<STRONG>not ours</STRONG></A>
<LI><A HREF="#4_4_glibc">compilation errors from streambuf.h</A>
</UL>
<LI><A HREF="#4_5">Aw, that's easy to fix!</A> <LI><A HREF="#4_5">Aw, that's easy to fix!</A>
</OL> </OL>
...@@ -489,44 +495,66 @@ to the list</A>, Nathan Myers announced that he has started a list of ...@@ -489,44 +495,66 @@ to the list</A>, Nathan Myers announced that he has started a list of
<H2><A NAME="4_4">4.4 Things in libstdc++ that look like bugs</A></H2> <H2><A NAME="4_4">4.4 Things in libstdc++ that look like bugs</A></H2>
<P>There are things which are not bugs in the compiler (4.2) nor <P>There are things which are not bugs in the compiler (4.2) nor
the language specification (4.3), but aren't really bugs in the language specification (4.3), but aren't really bugs in
libstdc++, either. Really! libstdc++, either. Really! Please do not report these as bugs.
</P> </P>
<P>The biggest of these is the quadzillions of warnings about the <A NAME="4_4_Weff">
library headers emitted when <TT>-Weffc++</TT> is used. Making <P>The biggest of these is the quadzillions of warnings about the
libstdc++ &quot;-Weffc++-clean&quot; is not a goal of the project, library headers emitted when <TT>-Weffc++</TT> is used. Making
for a few reasons. Mainly, that option tries to enforce libstdc++ &quot;-Weffc++-clean&quot; is not a goal of the project,
object-oriented programming, while the Standard Library isn't for a few reasons. Mainly, that option tries to enforce
necessarily trying to be OO. There are multiple solutions object-oriented programming, while the Standard Library isn't
under discussion. necessarily trying to be OO. There are multiple solutions
</P> under discussion.
<P>Another is the <TT>rel_ops</TT> namespace and the template </P>
comparison operator functions contained therein. If they become </A>
visible in the same namespace as other comparison functions <A NAME="4_4_rel_ops">
(e.g., '<TT>using</TT>' them and the &lt;iterator&gt; header), <P>Another is the <TT>rel_ops</TT> namespace and the template
then you will suddenly be faced with huge numbers of ambiguity comparison operator functions contained therein. If they become
errors. This was discussed on the -v3 list; Nathan Myers visible in the same namespace as other comparison functions
<A HREF="http://gcc.gnu.org/ml/libstdc++/2001-01/msg00247.html">sums (e.g., '<TT>using</TT>' them and the &lt;iterator&gt; header),
things up here</A>. then you will suddenly be faced with huge numbers of ambiguity
</P> errors. This was discussed on the -v3 list; Nathan Myers
<H3><A NAME="4_4_interface">The g++-3 headers are <A HREF="http://gcc.gnu.org/ml/libstdc++/2001-01/msg00247.html">sums
<EM>not ours</EM></A></H3> things up here</A>.
<P>If you have found an extremely broken header file which is </P>
causing problems for you, look carefully before submitting a </A>
&quot;high&quot; priority bug report (which you probably shouldn't <A NAME="4_4_interface"><H3>The g++-3 headers are
do anyhow; see the last paragraph of the page describing <EM>not ours</EM></H3>
<P>If you have found an extremely broken header file which is
causing problems for you, look carefully before submitting a
&quot;high&quot; priority bug report (which you probably shouldn't
do anyhow; see the last paragraph of the page describing
<A HREF="http://gcc.gnu.org/gnatswrite.html">the GCC bug database</A>). <A HREF="http://gcc.gnu.org/gnatswrite.html">the GCC bug database</A>).
</P> </P>
<P>If the headers are in <CODE>${prefix}/include/g++-3</CODE>, then <P>If the headers are in <CODE>${prefix}/include/g++-3</CODE>, then
you are using the old libstdc++-v2 library, which is nonstandard you are using the old libstdc++-v2 library, which is nonstandard
and unmaintained. Do not report problems with -v2 to the -v3 and unmaintained. Do not report problems with -v2 to the -v3
mailing list. mailing list.
</P> </P>
<P>Currently our header files are installed in <P>Currently our header files are installed in
<CODE>${prefix}/include/g++-v3</CODE> (see the 'v'?). This may <CODE>${prefix}/include/g++-v3</CODE> (see the 'v'?). This may
change with the next release of GCC, as it may be too confusing, change with the next release of GCC, as it may be too confusing,
but <A HREF="http://gcc.gnu.org/ml/gcc/2000-10/msg00732.html">the but <A HREF="http://gcc.gnu.org/ml/gcc/2000-10/msg00732.html">the
question has not yet been decided</A>. question has not yet been decided</A>.
</P> </P>
</A>
<A NAME="4_4_glibc">
<P>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 glibc FAQ, specifically 2.34:
<PRE>
2.34. When compiling C++ programs, I get a compilation error in streambuf.h.
{BH} You are using g++ 2.95.2? After upgrading to glibc 2.2, you need to
apply a patch to the include files in /usr/include/g++, because the fpos_t
type has changed in glibc 2.2. The patch is at
http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
</PRE>
Note that 2.95.x shipped with the
<A HREF="#4_4_interface">old v2 library</A> which is no longer
maintained.
</P>
</A>
<HR> <HR>
<H2><A NAME="4_5">4.5 Aw, that's easy to fix!</A></H2> <H2><A NAME="4_5">4.5 Aw, that's easy to fix!</A></H2>
...@@ -534,8 +562,8 @@ to the list</A>, Nathan Myers announced that he has started a list of ...@@ -534,8 +562,8 @@ to the list</A>, Nathan Myers announced that he has started a list of
a working fix, then send it in! The main GCC site has a page a working fix, then send it in! The main GCC site has a page
on <A HREF="http://gcc.gnu.org/contribute.html">submitting on <A HREF="http://gcc.gnu.org/contribute.html">submitting
patches</A> that covers the procedure, but for libstdc++ you patches</A> that covers the procedure, but for libstdc++ you
should of course send the patch to our mailing list, not the should also send the patch to our mailing list in addition to
GCC mailing list. The libstdc++ the GCC patches mailing list. The libstdc++
<A HREF="../17_intro/contribute.html">contributors' page</A> <A HREF="../17_intro/contribute.html">contributors' page</A>
also talks about how to submit patches. also talks about how to submit patches.
</P> </P>
...@@ -678,7 +706,7 @@ HREF="http://gcc.gnu.org/ml/libstdc++/1999/msg00084.html">speculation</A>. ...@@ -678,7 +706,7 @@ HREF="http://gcc.gnu.org/ml/libstdc++/1999/msg00084.html">speculation</A>.
Comments and suggestions are welcome, and may be sent to Comments and suggestions are welcome, and may be sent to
<A HREF="mailto:pme@sources.redhat.com">Phil Edwards</A> or <A HREF="mailto:pme@sources.redhat.com">Phil Edwards</A> or
<A HREF="mailto:gdr@gcc.gnu.org">Gabriel Dos Reis</A>. <A HREF="mailto:gdr@gcc.gnu.org">Gabriel Dos Reis</A>.
<BR> $Id: index.html,v 1.1 2000/12/10 04:04:56 pme Exp $ <BR> $Id: index.html,v 1.2 2001/01/23 17:02:27 pme Exp $
</EM></P> </EM></P>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment