2002-05-13 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc (basic_filebuf::_M_allocate_internal_buffer): Remove extraneous try/catch blocks. * src/localename.cc (locale::_Impl::_M_install_facet): Same. * docs/html/install.html: Tweak, add bits about required locales for the 22_locale tests when using the gnu model. * testsuite/27_io/istream_sentry.cc: Tweak. From-SVN: r53423
This commit is contained in:
parent
a8b432f4de
commit
540f5c9b2d
@ -1,3 +1,15 @@
|
||||
2002-05-13 Benjamin Kosnik <bkoz@redhat.com>
|
||||
|
||||
* include/bits/fstream.tcc
|
||||
(basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
|
||||
try/catch blocks.
|
||||
* src/localename.cc (locale::_Impl::_M_install_facet): Same.
|
||||
|
||||
* docs/html/install.html: Tweak, add bits about required locales
|
||||
for the 22_locale tests when using the gnu model.
|
||||
|
||||
* testsuite/27_io/istream_sentry.cc: Tweak.
|
||||
|
||||
2002-05-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
|
||||
|
@ -67,32 +67,57 @@
|
||||
|
||||
<p>As of June 19, 2000, libstdc++ attempts to use tricky and
|
||||
space-saving features of the GNU toolchain, enabled with
|
||||
<code>-ffunction-sections -fdata-sections -Wl,--gc-sections</code>.
|
||||
To obtain maximum benefit from this, binutils after this date
|
||||
should also be used (bugs were fixed with C++ exception handling
|
||||
related to this change in libstdc++-v3). The version of these
|
||||
tools should be <code>2.10.90</code>, and you can get snapshots (as
|
||||
well as releases) of binutils
|
||||
<a href="ftp://sources.redhat.com/pub/binutils">here</a>.
|
||||
<code>-ffunction-sections -fdata-sections
|
||||
-Wl,--gc-sections</code>. To obtain maximum benefit from this,
|
||||
binutils after this date should also be used (bugs were fixed
|
||||
with C++ exception handling related to this change in
|
||||
libstdc++-v3). The version of these tools should be
|
||||
<code>2.10.90</code>, or later, and you can get snapshots (as
|
||||
well as releases) of binutils
|
||||
<a href="ftp://sources.redhat.com/pub/binutils">here</a>. The
|
||||
configure process will automatically detect and use these
|
||||
features if the underlying support is present.
|
||||
</p>
|
||||
|
||||
<p>If you are using a 3.1-series libstdc++ snapshot, then the
|
||||
requirements are slightly more stringent: the compiler sources must
|
||||
also be 3.1 or later (for both technical and licensing reasons), and
|
||||
your binutils must be 2.11.95 or later if you want to use symbol
|
||||
versioning in shared libraries.
|
||||
requirements are slightly more stringent: the compiler sources
|
||||
must also be 3.1 or later (for both technical and licensing
|
||||
reasons), and your binutils must be 2.11.95 or later if you want
|
||||
to use symbol versioning in shared libraries. Again, the
|
||||
configure process will automatically detect and use these
|
||||
features if the underlying support is present.
|
||||
</p>
|
||||
|
||||
<!-- Commented until some system-specific requirements appear.
|
||||
<p>Finally, a few system-specific requirements:
|
||||
<p>Finally, a few system-specific requirements:
|
||||
<dl>
|
||||
<dt>Cygwin
|
||||
<dd>If you are using Cygwin to compile libstdc++-v3 on Win32, you'll
|
||||
[snip]
|
||||
<dt> linux
|
||||
|
||||
<dd>If you are using gcc 3.1 or later on linux, and are using
|
||||
the gnu locale model (enabled by default for sufficient
|
||||
versions of glibc), the following locales are used and tested
|
||||
in the libstdc++ testsuites: en_HK, en_US, fr_FR, fr_FR@euro,
|
||||
de_DE, de_DE@euro, ja_JP.eucjp, and it_IT. Failure to have the
|
||||
underlying "C" library locale information installed will mean
|
||||
that C++ named locales for the above regions will not work:
|
||||
because of this, the libstdc++ testsuite will not pass the
|
||||
named locale tests. If this isn't an issue, don't worry about
|
||||
it. If named locales are needed, the underlying locale
|
||||
information must be installed. Note that rebuilding libstdc++
|
||||
after locales are installed is not necessary.
|
||||
|
||||
<p> To install
|
||||
support for locales, do only one of the following: </p>
|
||||
<p>
|
||||
<li> install all locales
|
||||
<p> <code> export LC_ALL=C </code> </p>
|
||||
<p> <code> rpm -e glibc-common --nodeps </code> </p>
|
||||
<p> <code> rpm -i --define "_install_langs all"
|
||||
glibc-common-2.2.5-34.i386.rpm </code> </p>
|
||||
<li> install just the necessary locales
|
||||
<p> <code> localedef -i de_DE -f ISO-8859-1 de_DE </code> </p>
|
||||
</p>
|
||||
</dl>
|
||||
</p>
|
||||
-->
|
||||
|
||||
<hr>
|
||||
|
||||
|
@ -49,12 +49,7 @@ namespace std
|
||||
_M_buf_size = _M_buf_size_opt;
|
||||
|
||||
// Allocate internal buffer.
|
||||
try { _M_buf = new char_type[_M_buf_size]; }
|
||||
catch(...)
|
||||
{
|
||||
delete [] _M_buf;
|
||||
__throw_exception_again;
|
||||
}
|
||||
_M_buf = new char_type[_M_buf_size];
|
||||
_M_buf_allocated = true;
|
||||
}
|
||||
}
|
||||
|
@ -255,13 +255,7 @@ namespace std
|
||||
facet** __old = _M_facets;
|
||||
facet** __new;
|
||||
const size_t __new_size = __index + 4;
|
||||
try
|
||||
{ __new = new facet*[__new_size]; }
|
||||
catch(...)
|
||||
{
|
||||
delete [] __new;
|
||||
__throw_exception_again;
|
||||
}
|
||||
__new = new facet*[__new_size];
|
||||
for (size_t __i = 0; __i < _M_facets_size; ++__i)
|
||||
__new[__i] = _M_facets[__i];
|
||||
for (size_t __i2 = _M_facets_size; __i2 < __new_size; ++__i2)
|
||||
|
@ -70,7 +70,7 @@ test02()
|
||||
double x;
|
||||
|
||||
// ios_base::eof == 2
|
||||
while(in >> x)
|
||||
while (in >> x)
|
||||
{
|
||||
++i;
|
||||
if (i > 3)
|
||||
|
Loading…
Reference in New Issue
Block a user