OSDN Git Service

2003-07-01 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index 8f24748..a40e483 100644 (file)
@@ -1,3 +1,436 @@
+2003-07-01  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix obvious error.
+       * aclocal.m4: Regenerated.
+       * configure: Regenerated.
+       
+2003-07-01  Paolo Carlini  <pcarlini@unitus.it>
+
+       PR libstdc++/11389
+       * include/bits/fstream.tcc (underflow): For encoding() == 0
+       don't read more than __buflen chars.
+       * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
+       * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
+       * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
+       * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
+
+2003-07-01  Jerry Quinn  <jlquinn@optonline.net>
+
+       * 22_locale/num_put/put/char/7.cc: New.
+       * 22_locale/num_put/put/wchar_t/7.cc: New.
+
+2003-06-30  Jerry Quinn  <jlquinn@optonline.net>
+
+       * src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
+       * include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.
+
+2003-06-30  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
+       * 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
+       * 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
+       * 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
+       * 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/2.cc: Change.
+       * 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
+       * 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
+       * 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
+       * data/seekoff-1.tst: Remove.
+       * data/seekoff-1io.tst: New.
+       * data/seekoff-1out.tst: New.
+       * data/seekoff-2.tst: Remove.
+       * data/seekoff-2io.tst: New.
+       * data/seekoff-2out.tst: New.
+       * data/seekoff.txt
+       * data/seekpos-1.tst: Remove.
+       * data/seekpos-1io.tst: New.
+       * data/seekpos-1out.tst: New.
+       * data/seekpos-2.tst: Remove.
+       * data/seekpos-2io.tst: New.
+       * data/seekpos-2out.tst: New.
+       * data/seekpos.txt: New.
+
+2003-06-30  Jerry Quinn  <jlquinn@optonline.net>
+
+       * src/locale.cc (__use_cache<numpunct>): Move from here ...
+       * include/bits/locale_facets.tcc (__use_cache<numpunct>): To
+       here.
+
+2003-06-30  Paolo Carlini  <pcarlini@unitus.it>
+
+       * include/bits/stl_algobase.h: Fully qualify standard
+       functions with std::, thus avoiding Koenig lookup.
+
+2003-06-30  Doug Gregor <dgregor@apple.com>
+       
+       * include/bits/locale_facets.tcc (money_get::do_get): Avoid
+        subscripting empty string. 
+
+2003-06-30  Phil Edwards  <pme@gcc.gnu.org>
+
+       * testsuite/Makefile.am (check-am):  Do not override.
+       (baseline_symbols):  Declare as PHONY, so no need to 'touch' it.
+       * testsuite/Makefile.in:  Regenerate.
+
+2003-06-30  Doug Gregor <dgregor@apple.com> 
+       
+       * testsuite/24_iterators/insert_iterator.cc (test01, test02):
+       Don't initialize an insert_iterator with a singular iterator.
+
+2003-06-30  Benjamin Kosnik  <bkoz@redhat.com>
+       
+       * acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
+       * aclocal.m4: Regenerate.
+       * configure.in (GLIBCPP_CHECK_PCH): Move, change to
+       GLIBCPP_ENABLE_PCH, default to yes.
+       * configure: Regenerate.
+       * docs/html/configopts.html: Add --enable-pch.
+       
+2003-06-30  Phil Edwards  <pme@gcc.gnu.org>
+
+       * testsuite/lib/libstdc++-v3-dg.exp:  Add comments.
+       (libstdc++-v3-init):  Also set LD_RUN_PATH.
+
+2003-06-30  Paolo Carlini  <pcarlini@unitus.it>
+
+       * include/std/std_streambuf.h (_M_mode): Unused by streambuf, move
+       from here to filebuf and stringbuf.
+       (~basic_streambuf()): Don't set _M_mode.
+       (basic_streambuf()): Don't set _M_mode.
+       * include/std/std_fstream.h (_M_mode): Move here, from streambuf.
+       (~basic_filebuf()): Clean up.
+       * include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
+       * include/std/std_sstream.h (_M_mode): Move here, from streambuf.
+       * testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
+       * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
+       * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
+       * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
+       * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
+
+2003-06-30  Paolo Carlini  <pcarlini@unitus.it>
+
+       * include/std/std_fstream.h (_M_underflow): Remove.
+       (uflow): Remove, inherited from streambuf.
+       (underflow): Only declare.
+       * include/bits/fstream.tcc (_M_underflow): Rename to 
+       underflow, to which is equivalent for __bump == false,
+       simplify.
+       * include/std/std_sstream.h (_M_underflow): Remove.
+       (uflow): Remove, inherited from streambuf.
+       (underflow): Only declare.
+       * include/bits/sstream.tcc (_M_underflow): Rename to 
+       underflow, to which is equivalent for __bump == false,
+       simplify.
+
+2003-06-29  Paolo Carlini  <pcarlini@unitus.it>
+
+       * include/bits/stl_algo.h: Fully qualify standard functions
+       with std::, thus avoiding Koenig lookup.
+
+2003-06-29  Paolo Carlini  <pcarlini@unitus.it>
+
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
+       Improve type correctness-wise.
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
+       Likewise.
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
+       Likewise.
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
+       Likewise.
+
+2003-06-29  Paolo Carlini  <pcarlini@unitus.it>
+
+       * include/std/std_streambuf.h (uflow): According to
+       27.5.2.4.3,p16, don't check gptr() < egptr().
+
+2003-06-28  Paolo Carlini  <pcarlini@unitus.it>
+
+       PR libstdc++/9875
+       * include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
+       (seekpos): Likewise.
+       * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
+       New test.
+       * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
+       New test.
+
+2003-06-27  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * testsuite/testsuite_performance.h (__gnu_cxx_test): Change
+       output name to libstdc++-v3-performance.sum.
+       * testsuite/Makefile.am (CLEANFILES): Remove .performance.
+       * testsuite/Makefile.in: Regenerate.
+       
+2003-06-27  Matthias Klose  <doko@debian.org>
+
+       * testsuite/Makefile.am (check-abi, check-abi-verbose): Save
+       output of abi-check in libstdc++-v3-abi.sum.
+       * testsuite/Makefile.in: Regenerate.
+
+2003-06-27  Krister Walfridsson  <cato@df.lth.se>
+
+       * config/os/bsd/netbsd/ctype_noninline.h
+       (_C_ctype_): Declare.
+       (ctype<char>::classic_table): Return _C_ctype_ + 1.
+       (ctype<char>::ctype): Use classic_table.
+
+2003-06-27  Paolo Carlini  <pcarlini@unitus.it>
+           Nathan C. Myers  <ncm-nospam@cantrip.org>
+
+       PR libstdc++/9178
+       * include/bits/fstream.tcc (_M_underflow): Properly estimate
+       the worst-case number of external bytes for a given get area.
+       * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
+
+2003-06-27  Paolo Carlini  <pcarlini@unitus.it>
+           Petur Runolfsson  <peturr02@ru.is>
+
+       PR libstdc++/11305
+       * include/bits/fstream.tcc (overflow): Properly estimate the
+       worst-case number of external bytes for a given put area
+       (by using codecvt::max_length()).
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
+       * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
+
+2003-06-27  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config/linker-map.gnu: Remove ; after __numpunct_cache.
+
+2003-06-26  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/bits/ios_base.h (ios_base::_M_getloc): Return reference
+       to the imbued locale.
+       * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
+       _M_getloc.
+       (num_put::_M_convert_float): Use.
+
+2003-06-26  Benjamin Kosnik  <bkoz@redhat.com>
+           Jerry Quinn  <jlquinn@optonline.net>
+
+       * config/linker-map.gnu: Add __numpunct_cache.
+       * config/locale/gnu/numeric_members.cc
+       (numpunct::_M_initialize_numpunct): Account for _M_data, fill in
+       all elements for "C" locale.
+       (numpunct::~numpunct): Delete _M_data.
+       * config/locale/generic/numeric_members.cc: Same.       
+       * include/bits/basic_ios.tcc
+       (basic_ios::init): Remove __locale_cache bits.
+       (basic_ios::_M_cache_locale): Same.
+       * include/bits/ios_base.h: Same. Tweaks. 
+       * include/bits/locale_classes.h: Tweaks. Reorder classes.
+       (__use_cache): Make friends with _Impl, locale.
+       (_Impl::_M_caches): Add.
+       (_Impl::_M_install_cache): Add.
+       * include/bits/locale_facets.h (__numpunct_cache): New.
+       (numpunct): Encapsulate data members in __numpunct_cache member,
+       _M_data. Adjust virtuals.
+       (numpunct::numpunct): New ctor for the same. 
+       (__locale_cache_base): Remove.
+       (__locale_cache): Remove.       
+       * include/bits/locale_facets.tcc (__use_cache): New function,
+       specializations.
+       (num_put::_M_convert_int, _M_convert_float, do_put): Use it.
+       * src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
+       * src/ios.cc (ios_base::ios_base): Remove __locale_cache.
+       * src/locale-inst.cc: Same. Add __numpunct_cache.
+       * src/locale.cc: Tweak inlines.
+       (__use_cache): Define specializations.
+       * src/localename.cc: Use global bits.
+       (_Impl::~Impl): Deal with __numpunct_cache destruction.
+       (_Impl::_Impl): Same. Pre-cache standard numpunct facets.
+       (_Impl::_M_init_facet): Take into account __numpunct_cache.
+       * testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
+       * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
+2003-06-26  Nathan C. Myers  <ncm-nospam@cantrip.org>
+            Paolo Carlini  <pcarlini@unitus.it>
+
+       * testsuite/performance/filebuf_copy.cc: New, testing char
+       by char file copy.
+
+2003-06-26  Paolo Carlini  <pcarlini@unitus.it>
+            Nathan C. Myers  <ncm-nospam@cantrip.org>
+
+       * include/bits/fstream.tcc (_M_underflow): When the actual
+       end of file is reached, set 'uncommitted' mode to allow a
+       next write without an intervening seek (see C++98 27.8.1.1,2
+       and C89 7.9.5.3).
+       * testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
+
+2003-06-25  Nathan C. Myers  <ncm-nospam@cantrip.org>
+
+       * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
+       sputc): Move inline, from here...
+       * include/std/std_streambuf.h: ... to here.
+
+       * include/std/std_streambuf.h (snextc, sbumpc, sgetc,
+       sputbackc, sungetc, sputc): Use __builtin_expect.
+
+2003-06-24  Phil Edwards  <pme@gcc.gnu.org>
+
+       * docs/doxygen/mainpage.html:  Use a useful title.
+
+2003-06-24  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * docs/html/documentation.html: Remove assignment info.
+       * docs/html/17_intro/contribute.html: Edits.
+       * docs/html/17_intro/libstdc++-assign.tx: Remove.
+
+       * docs/html/test.html: Update.
+
+       * README: Update.
+       
+2003-06-24  Benjamin Kosnik  <bkoz@redhat.com>
+            Ulrich Drepper  <drepper@redhat.com>
+
+       * testsuite/testsuite_performance.h: Tweak mallinfo.
+
+2003-06-24  Paolo Carlini  <pcarlini@unitus.it>
+            Nathan C. Myers  <ncm-nospam@cantrip.org>
+
+       * include/std/std_fstream.h (_M_filepos): Remove.
+       (_M_reading, _M_writing): New, encode the various I/O modes:
+       'read', 'write' and 'uncommitted'.
+       (sync): If there is something to flush, do it, then go to
+       'uncommitted' mode.
+       * include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
+       with three different cases: __off > 0 (upon underflow),
+       __off == 0 (upon overflow), __off == -1 (upon open, setbuf,
+       seekoff/pos).
+       (_M_underflow): Don't call overflow, set _M_reading to true
+       on success, tweak.
+       (pbackfail): Set _M_reading to true on pback creation, tweak.
+       (overflow): Don't seek, deal with overflow in 'uncommitted' mode,
+       set _M_writing to true on success, tweak.
+       (seekoff): Simplify, set _M_reading, _M_writing to false, call
+       _M_set_buffer(-1) ('uncommitted').
+       (open, close, setbuf): Set _M_reading, _M_writing to false and
+       call _M_set_buffer(-1), tweak.
+       (basic_filebuf): Don't set _M_buf_unified.
+       (_M_destroy_internal_buffer): Don't call setg and setp.
+       * include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
+       _M_writing and _M_set_buffer(-1).
+       * include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
+       _M_out_lim, _M_buf_unified): Remove.
+       (basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
+       (setp): Don't set _M_out_lim.   
+       * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
+       the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
+       upon open the mode is 'uncommitted' and therefore the put area
+       pointers are null.
+       * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
+       * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
+
+       * include/bits/fstream.tcc (showmanyc): Use only the
+       documented derivation interface to basic_streambuf (gptr(),
+       setg(), etc.) to work right with user specializations.
+       * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
+       sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
+       * include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
+       Likewise.
+       * include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
+       xsgetn): Likewise.
+
+2003-06-23  Loren J. Rittle  <ljrittle@acm.org>
+
+       * configure.host (freebsd*): Set abi_baseline_pair.
+       * config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
+       (at or near first release) to 3.3.
+       * config/abi/i386-freebsd5/baseline_symbols.txt: New file.
+       * config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
+       * config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
+
+       * include/ext/mt_allocator.h: Portability.
+       * testsuite/testsuite_performance.h: Likewise.
+
+2003-06-23  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * docs/html/17_intro/libstdc++-assign.txt: Update address.
+
+       * testsuite/performance/ifstream_getline.cc: Fix.
+       
+2003-06-23  Doug Gregor <dgregor@apple.com>
+
+        * include/bits/boost_concept_check.h: Don't use _D or _R for type 
+        names.
+
+2003-06-22  Paolo Carlini  <pcarlini@unitus.it>
+           Nathan C. Myers  <ncm-nospam@cantrip.org>
+
+       * include/std/std_streambuf.h (_M_move_out_cur): _M_out_lim
+       is now used only for filebuf, when _M_buf_unified is true.
+       epgtr() plays the role of _M_out_lim but it's only updated
+       upon overflow, underflow, uflow, seekoff/pos.
+       * include/bits/sstream.tcc (_M_underflow): New, implements
+       stringbuf::underflow and uflow.
+       (seekoff, seekpos): Tweak, use  _M_update_egptr.
+       * include/std/std_sstream.h (str): Rewrote, deal correctly
+       with the new logic, in particular, when pptr() > egptr().
+       (_M_sync): When __testout && !__testin set all the get area
+       pointers to the current string end.
+       (_M_update_egptr): New, internal function updating egptr()
+       to the actual string end.
+       (_M_underflow): New, declare.
+       (underflow): Dispatch to _M_underflow(false).
+       (uflow): Dispatch to _M_underflow(true).
+
+       * include/bits/sstream.tcc (pbackfail, overflow, seekoff,
+       seekpos): Use only the documented derivation interface to
+       basic_streambuf (gptr(), setg(), etc.) to work right with
+       user specializations.
+       * include/std/std_sstream.h (str, _M_sync): Likewise.
+
+2003-06-20  Doug Gregor <dgregor@apple.com>
+
+       * testsuite/20_util/auto_ptr.cc: Don't dereference NULL auto_ptr
+       * testsuite/21_strings/basic_string/replace/char/4.cc: Don't
+       dereference end iterator.
+       * testsuite/21_strings/basic_string/replace/wchar_t/4.cc: Same.
+       * testsuite/22_locale/ctype/narrow/char/1.cc: Don't subscript with
+       index equal to the length of a string.
+       * testsuite/22_locale/ctype/narrow/char/2.cc: Same.
+       * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Same.
+       * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Same.
+       * testsuite/22_locale/ctype/widen/char/1.cc: Same.
+       * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Same.
+       * testsuite/23_containers/list_modifiers.cc: Don't dereference
+       singular reverse iterator.
+       * testsuite/23_containers/vector_bool.cc: Don't increment singular
+       iterator.
+       * testsuite/24_iterators/rel_ops.cc: Don't compare singular iterator.
+
 2003-06-20  Doug Gregor <dgregor@apple.com>
 
        * include/bits/basic_string.h (basic_string::replace): Dispatch