2003-12-31 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_int,
num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
_first_ look for thousands_sep, then for decimal_point and
finally for digits.
(num_get::_M_extract_float): After the decimal_point or
'e'/'E', decimal_point and thousands_sep just break out the
parsing loop.
* testsuite/22_locale/num_get/get/char/11.cc: Add tests.
* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
2003-12-30 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/13369
* include/bits/locale_facets.tcc (__verify_grouping):
Fix to deal properly with __grouping_tmp.size() >
__grouping.size().
* testsuite/22_locale/num_get/get/char/13.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/13.cc: Ditto.
2003-12-29 Jerry Quinn <jlquinn@optonline.net>
* include/bits/locale_facets.h (ctype.narrow,widen): Add cast.
2003-12-29 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 (GLIBCXX_CHECK_LFS): Add -fno-exceptions
to CXXFLAGS.
* aclocal.m4: Regenerate.
* configure: Likewise.
2003-12-29 Mark Mitchell <mark@codesourcery.com>
* acconfig.h: Add _GLIBCXX_USE_C99_MATH.
* acinclude.m4 (GLIBCXX_ENABLE_C99): Define GLIBCXX_USE_C99_MATH.
* configure.ac: Define HAVE_S_ISREG and HAVE_S_IFREG when
targeting newlib.
* aclocal.m4: Regenerated.
* config.h.in: Likewise.
* configure: Likewise.
* Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* include/c_std/std_cmath.h (_GLIBCXX_USE_C99): Replace with ...
(_GLIBCXX_USE_C99_MATH): ... this.
* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL for
arm-none-elf.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
* testsuite/27_io/basic_istream/readsome/char/6476-2.cc: Likewise.
* testsuite/27_io/objects/char/9.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
2003-12-28 Paolo Carlini <pcarlini@suse.de>
* include/ext/pool_allocator.h (class __pool_alloc): Use
operator new and operator delete.
2003-12-24 Andrew Pinski <pinskia@physics.uc.edu>
* config/cpu/i386/atomicity.h (__exchange_and_add): Fix output
constraint.
PR libstdc++/13480
* config/cpu/i386/atomicity.h: Split up read-write memory operand.
2003-12-23 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/new_allocator.h (new_allocator): Proper allocator class.
(__new_alloc): Delete.
* include/ext/malloc_allocator.h (malloc_allocator): Same.
(__malloc_alloc): Delete.
* include/ext/mt_allocator.h: Same, but weakly.
* include/ext/debug_allocator.h: Convert to the new style.
* include/ext/pool_allocator.h: Use global new and delete directly.
* include/backward/alloc.h: Don't inject malloc_allocator, or
debug_allocator.
* testsuite/ext/allocators.cc: Minimal fixups for usage of new
classes. Comment out tests with __pool_alloc for now.
* testsuite/performance/allocator.cc: Same.
2003-12-22 Matt Austern <austern@apple.com>
* include/bits/stl_bvector.h (_Bvector_alloc_base): Eliminate.
(_Bvector_base): Inherit directly from word allocator.
* include/bits/stl_tree.h (_Rb_tree_alloc_base): Eliminate.
(_Rb_tree_base): Eliminate.
(_Rb_tree): Inherit directly from node allocator.
* include/ext/slist (_Alist_alloc_base): Eliminate.
(_Slist_base): Inherit direcly from node allocator.
2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/18_support/numeric_limits.cc: Add _GLIBCXX_ASSERT to
dg-options in testcases that use VERIFY.
* testsuite/23_containers/vector/invalidation/1.cc: Same.
* testsuite/23_containers/vector/invalidation/2.cc: Same.
* testsuite/23_containers/vector/invalidation/3.cc: Same.
* testsuite/23_containers/vector/invalidation/4.cc: Same.
* testsuite/23_containers/vector/resize/1.cc: Same.
* testsuite/26_numerics/complex_value.cc: Same.
* testsuite/27_io/ios_base/storage/1.cc: Same.
* testsuite/27_io/ios_base/storage/2.cc: Same.
* testsuite/27_io/ios_base/storage/3.cc: Same.
* testsuite/27_io/manipulators/standard/char/2.cc: Same.
* testsuite/backward/11460.cc: Same.
* testsuite/backward/strstream_members.cc: Same.
* include/ext/hash_set (class hash_multiset): Fix typo.
2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
* testsuite/27_io/objects/wchar_t/5.cc: Same.
* docs/html/test.html: Add docs for constructing test files that
don't use stdc++.h.gch.
* scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
* testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
differently.
* include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
* src/ios_init.cc: Same.
* config/linker-map.gnu: Same.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
PR libstdc++/13462
* include/bits/stl_multiset.h (__gnu_norm::multiset): Define pointer
as allocator's pointer, likewise for reference, const_pointer, and
const_reference.
* include/bits/stl_set.h (__gnu_norm::set): Likewise.
* include/ext/hash_set (__gnu_ext::hash_set): Likewise.
(__gnu_ext::hash_multiset): Likewise.
2003-12-22 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_int,
num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
first look for decimal_point and thousands_sep, when parsing
sign, leading zeros (and 0, Ox, 0X for integer types) too.
* testsuite/22_locale/num_get/get/char/12.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
* testsuite/22_locale/num_get/get/char/11.cc: Add a comment.
* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
2003-12-20 Jason Merrill <jason@redhat.com>
* config/cpu/powerpc/atomicity.h: Fix oversight in previous
change.
2003-12-20 Jerry Quinn <jlquinn@optonline.net>
* docs/doxygen/TODO: Update.
* include/bits/locale_classes.h (locale, facet, id): Document.
* include/bits/locale_facets.tcc (has_facet, use_facet): Document.
2003-12-19 Jason Merrill <jason@redhat.com>
* config/cpu/cris/atomicity.h: Remove memory clobbers.
* config/cpu/mips/atomicity.h: Likewise.
* config/cpu/i486/atomicity.h: Remove memory clobbers.
Split up read-write memory operand.
* config/cpu/m68k/atomicity.h: Likewise.
* config/cpu/powerpc/atomicity.h: Make memory I/O explicit.
* config/cpu/s390/atomicity.h: Likewise.
* config/cpu/sparc/atomicity.h: Likewise.
2003-12-20 Carlo Wood <carlo@alinoe.com>
* bits/demangle.h
namespace __gnu_cxx::demangler
(session<Allocator>::decode_encoding): Put the postfix
of the return type of (member) functions after the function
instead of after the return type.
2003-12-19 Jerry Quinn <jlquinn@optonline.net>
* include/bits/locale_facet.h
(__ctype_abstract_base,ctype<charT>,ctype<char>,ctype<wchar_t>):
Document.
2003-12-19 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_int,
num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
first look for decimal_point and thousands_sep.
* testsuite/22_locale/num_get/get/char/11.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
2003-12-19 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_float):
When __found_sci becomes true stop eating thousands separators
and the decimal radix separator.
* testsuite/22_locale/num_get/get/char/9.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
* config/locale/generic/c_locale.cc (__convert_to_v): Don't
check that *__sanity == '\0': parsing may stop earlier, still
be successful.
* config/locale/gnu/c_locale.cc: Likewise.
* testsuite/22_locale/num_get/get/char/10.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
Tweak in one place accordingly.
* testsuite/22_locale/money_get/get/char/1.cc: Fix typo.
* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
2003-12-18 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_list.h: Formatting tweaks.
* include/bits/list.tcc: Same.
2003-12-18 Matt Austern <austern@apple.com>
* include/bits/demangle.h: Fix allocator type correctness,
i.e. make sure that when we instantiate a container with a value
type and an allocator, the allocator's value type matches the
container's.
* include/bits/stl_deque.h (_Deque_alloc_base): Eliminate.
(_Deque_base): inherit directly from the deque's allocator. Use
rebinding instead of _Alloc_traits. Pick up data members from
_Deque_alloc_base.
* include/bits/stl_list.h (_List_alloc_base): Eliminate.
(_List_base): Inherit directly from the list's allocator. Use
rebinding instead of _Alloc_traits. Pick up data members from
_List_alloc_base.
* include/bits/stl_vector.h (_Vector_alloc_base): Eliminate
(_Vector_base): Inherit directly from the vector's allocator. Use
rebinding instead of _Alloc_traits. Pick up data members from
_Vector_alloc_base.
* include/ext/hashtable.h: Fix allocator type correctness (the
vector of buckets must be passed an allocator for objects of
type _Node*). Use rebinding instead of _Alloc_traits.
2003-12-17 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
Use narrow to get from __format[__i] a char __c representing a
formatting code, don't use it to compare *__beg to __format[__i].
* testsuite/22_locale/time_get/get_date/wchar_t/4.cc: New.
2003-12-17 Paolo Carlini <pcarlini@suse.de>
* testsuite/performance/container_benchmark.cc: Tweak outputs.
* testsuite/performance/list_create_fill_sort.cc: Shrink a
bit some outputs.
* testsuite/testsuite_performance.h: Widen a few output fields.
* testsuite/performance/ifstream_extract_int.cc: New.
2003-12-16 Phil Edwards <phil@codesourcery.com>
* configure.ac (AM_INIT_AUTOMAKE): Don't warn about GNU Make.
* configure: Regenerated.
* Makefile.am (check-%): New catch-all forwarding target.
* Makefile.in: Regenerated.
2003-12-16 Paolo Carlini <pcarlini@suse.de>
* testsuite/performance/container_benchmark.cc: New, a
benchmark developed by Bjarne Stroustrup and Alexander
Stepanov and made available with no restrictions.
* testsuite/testsuite_performance.h (report_header): New,
useful to produce header lines in the reports.
2003-12-16 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/21_strings/howto.html: Document shrink-to-fit reserve().
* docs/html/faq/index.html: Reducing vector's capacity() to size().
* docs/html/documentation.html, docs/html/faq/index.txt: Regenerate.
2003-12-16 Paolo Carlini <pcarlini@suse.de>
* testsuite/performance/narrow_widen_char.cc: Tweak the
number of iterations for each test.
* testsuite/performance/narrow_widen_wchar_t.cc: Add a
missing clear_counters.
2003-12-16 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/11723
* include/bits/locale_facets.h: Add _M_bit and _M_wmask,
used to speed up the computation of ctype::do_is.
* config/locale/generic/ctype_members.cc
(_M_initialize_ctype): Fill _M_bit and _M_wmask.
(ctype::do_is): Use _M_bit and _M_wmask.
* config/locale/gnu/ctype_members.cc: Likewise.
* testsuite/performance/is_wchar_t.cc: New.
* testsuite/performance/narrow_widen_wchar_t.cc: Tweak
string literal (incorrect citation ;)
* include/bits/locale_facets.h: Minor tweaks, const
correctness, unsigned -> size_t.
2003-12-16 Jerry Quinn <jlquinn@optonline.net>
* include/bits/locale_facets.h (widen, narrow): Uncomment the
intended code.
2003-12-15 Jerry Quinn <jlquinn@optonline.net>
* config/os/aix/ctype_noninline.h,
config/os/bsd/freebsd/ctype_noninline.h,
config/os/bsd/netbsd/ctype_noninline.h,
config/os/djgpp/ctype_noninline.h,
config/os/generic/ctype_noninline.h,
config/os/gnu-linux/ctype_noninline.h,
config/os/hpux/ctype_noninline.h,
config/os/irix/irix5.2/ctype_noninline.h,
config/os/irix/irix6.5/ctype_noninline.h,
config/os/mingw32/ctype_noninline.h,
config/os/newlib/ctype_noninline.h,
config/os/qnx/qnx6.1/ctype_noninline.h,
config/os/solaris/solaris2.5/ctype_noninline.h,
config/os/solaris/solaris2.6/ctype_noninline.h,
config/os/solaris/solaris2.7/ctype_noninline.h,
config/os/vxworks/ctype_noninline.h,
config/os/windiss/ctype_noninline.h (ctype): Initialize
_M_narrow, _M_widen.
* include/bits/locale_facets.h (_M_widen, _M_widen_ok,
_M_narrow, _M_narrow_ok): New.
(widen, narrow): Use tables to bypass virtual functions.
(_M_widen_init, _M_narrow_init): New.
2003-12-15 Carlo Wood <carlo@alinoe.com>
* include/bits/ios_base.h (Init::_S_initialized): Change into
declaration.
* src/ios_init.cc (Init::_S_initialized): Add definition.
2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12658
* include/Makefile.am (bits_headers): Add concurrence.h.
* include/Makefile.in: Regenerated.
* include/bits/concurrence.h: New.
* src/locale_init.cc: Use it.
(locale::locale): Lock critical regions.
(locale::global): Same.
2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_string.h: Change _*_references to _*_refcount.
* include/bits/locale_classes.h: Same.
* src/locale.cc: Same.
* src/locale_name.cc: Same.
* src/locale_init.cc: Same.
2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12855
* include/bits/ios_base.h (Init::_S_ios_base_init): Change to
_S_refcount, make atomic.
* src/ios.cc: Adjust definition.
* src/ios_init.cc (ios_base::Init::Init): Use __exchange_and_add,
and __atomic_add.
(ios_base::Init::~Init): Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2003-12-15 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::do_get(bool&)):
Fail as soon as the begins of both truename and falsename
stop to match; always leave __beg one position beyond the
last char successfully matched.
* testsuite/22_locale/num_get/get/char/8.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
2003-12-15 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (_M_widen): Reserve space
for all the possible widened chars.
* config/locale/generic/ctype_members.cc (_M_initialize_ctype):
Compute at construction time all the possible widened chars.
(do_widen): Tweak, simplify.
* config/locale/gnu/ctype_members.cc: Likewise.
* testsuite/performance/narrow_widen_wchar_t.cc: Add tests
for the array versions.
2003-12-12 Paolo Carlini <pcarlini@suse.de>
Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13341
* include/bits/locale_facets.h (ctype<wchar_t>): Declare
_M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
* src/ctype.cc (ctype<wchar_t>::ctype(size_t),
ctype<wchar_t>::ctype(__c_locale, size_t)): Use
_M_initialize_ctype to fill _M_narrow and _M_widen.
(ctype_byname<wchar_t>::ctype_byname(const char*, size_t)):
Likewise.
* config/locale/generic/ctype_members.cc (do_narrow, do_widen)
Use _M_narrow and _M_widen when possible, instead of calling
wctob and btowc, respectively.
(_M_initialize_ctype): Define, it fills at construction time
_M_narrow and _M_widen.
* config/locale/gnu/ctype_members.cc: Likewise.
* testsuite/performance/narrow_widen_wchar_t.cc: New.
2003-12-12 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/faq/index.txt: Regenerate after adding <link> tags.
2003-12-11 Neil Ferguson <nferguso@eso.org>
Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
* testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
* testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.
2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/6243
* testsuite/lib/libstdc++.exp (v3-init): Add
original_ld_library_path, calculate ld_library path, set
LD_LIBRARY_PATH to both. Based on libjava.exp.
2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
Alexandre Oliva <aoliva@redhat.com>
PR libstdc++/11612
* testsuite/Makefile.am (GLIBCXX_DIR): New.
(GLIBGCC_DIR): New.
(CXXLINK): Use both with -R so libtool links the correct libs.
2003-12-10 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/13217
* include/bits/fstream.tcc (underflow): Deal gracefully with
read errors: throw ios_base::failure.
2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10063
* config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
* testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
* testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
2003-12-10 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_put::do_put(void*)):
Remove the try/catch, not necessary.
2003-12-10 Paolo Carlini <pcarlini@suse.de>
* testsuite/22_locale/locale/cons/12438.cc: Tweak memory
limit and iterations to avoid spurious failures on some
64 bit machines.
2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Remove private ios_base members from
export list.
* config/cpu/alpha/atomicity.h: Consistently format.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/generic/atomicity.h: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/cpu/i386/atomicity.h: Same.
* config/cpu/i486/atomicity.h: Same.
* config/cpu/ia64/atomicity.h: Same.
* config/cpu/m68k/atomicity.h: Same.
* config/cpu/mips/atomicity.h: Same.
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13296
* acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
* aclocal.m4: Regenerate.
* configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
* conigure: Regenerate.
* src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
* src/Makefile.in: Regenerate.
* docs/html/17_intro/configury.html: Modify.
2003-12-09 Paolo Carlini <pcaelini@suse.de>
* include/bits/demangle.h (struct implementation_details):
Keep in comments the names of the unused parameters.
2003-12-09 Paolo Carlini <pcaelini@suse.de>
* include/bits/demangle.h (struct implementation_details):
Fix unused parameters warning.
2003-12-09 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_int):
Slightly streamline the code dealing with overflows and the
parsing of the sign.
2003-12-09 Bernardo Innocenti <bernie@develer.com>
* include/ext/algorithm, include/ext/debug_allocator.h,
include/ext/enc_filebuf.h, include/ext/functional,
include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
include/ext/hashtable.h, include/ext/iterator,
include/ext/malloc_allocator.h, include/ext/memory,
include/ext/mt_allocator.h, include/ext/numeric,
include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
include/ext/slist, include/ext/stdio_filebuf.h,
include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
2003-12-09 Bernardo Innocenti <bernie@develer.com>
* include/debug/bitset, include/debug/debug.h, include/debug/deque,
include/debug/formatter.h, include/debug/hash_map.h,
include/debug/hash_multimap.h, include/debug/hash_multiset.h,
include/debug/hash_set, include/debug/hash_set.h, include/debug/list,
include/debug/map.h, include/debug/multimap.h,
include/debug/multiset.h, include/debug/safe_base.h,
include/debug/safe_iterator.h, include/debug/safe_iterator.tcc,
include/debug/safe_sequence.h, include/debug/set.h,
include/debug/string, include/debug/vector: Remove trailing whitespace.
2003-12-09 Bernardo Innocenti <bernie@develer.com>
* include/c_compatibility/iso646.h, include/c_compatibility/limits.h,
include/c_compatibility/locale.h, include/c_compatibility/stdio.h,
include/c_compatibility/string.h, include/c_compatibility/time.h,
include/c_compatibility/wchar.h, include/c_compatibility/wctype.h:
Remove trailing whitespace.
2003-12-09 Bernardo Innocenti <bernie@develer.com>
* include/c_std/cmath.tcc, include/c_std/std_cassert.h,
include/c_std/std_cctype.h, include/c_std/std_cmath.h,
include/c_std/std_cstddef.h, include/c_std/std_cstdio.h,
include/c_std/std_cstdlib.h, include/c_std/std_cstring.h,
include/c_std/std_cwchar.h, include/c_std/std_cwctype.h:
Remove trailing whitespace.
2003-12-09 Bernardo Innocenti <bernie@develer.com>
* include/c/std_cctype.h, include/c/std_cmath.h,
include/c/std_cstdlib.h include/c/std_cwchar.h,
include/c/std_cwctype.h: Remove trailing whitespace.
2003-12-09 Bernardo Innocenti <bernie@develer.com>
* include/backward/algo.h, include/backward/algobase.h,
include/backward/alloc.h, include/backward/complex.h,
include/backward/defalloc.h, include/backward/function.h,
include/backward/iterator.h, include/backward/new.h,
include/backward/ostream.h, include/backward/queue.h,
include/backward/rope.h, include/backward/stream.h,
include/backward/streambuf.h, include/backward/strstream,
include/backward/tempbuf.h, include/backward/tree.h,
include/backward/vector.h: Remove trailing whitespace.
2003-12-08 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc (__convert_to_v(long&),
__convert_to_v(unsigned long&), __convert_to_v(long long&),
__convert_to_v(unsigned long long&): Remove.
(__convert_to_v(float&), __convert_to_v(double&),
__convert_to_v(long double&)): Remove last unused parameter.
* config/locale/gnu/c_locale.cc: Likewise.
* include/bits/locale_facets.h: Likewise.
(num_get::_M_extract_int): Update declaration.
(class __num_base): Tweak _S_ie and _S_iE according to the
_S_atoms_in changes.
* include/bits/locale_facets.tcc (num_get::_M_extract_int):
Provide directly the final _ValueT, not a string: accumulate
the result checking for overflow at each digit.
(num_get::do_get(bool&), num_get::do_get(long&),
num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
num_get::do_get(unsigned long&), num_get::do_get(long long&),
num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
Use the new _M_extract_int, simplify.
* src/locale-inst.cc (num_get::_M_extract_int(long&),
num_get::_M_extract_int(unsigned short&),
num_get::_M_extract_int(unsigned int&),
num_get::_M_extract_int(unsigned long&),
num_get::_M_extract_int(long long&),
num_get::_M_extract_int(unsigned long long&): Instantiate.
* src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
the chars in the natural order: abcdefABCDEF.
2003-12-08 David S. Miller <davem@redhat.com>
PR libstdc++/12496
* config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
Extend increment to _Atomic_word before giving to assembler.
2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/ext/enc_filebuf/char/13189.cc: Guard for __enc_traits.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/11691
* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
Remove __del argument to file descriptor constructor.
* config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
bool argument.
* config/io/basic_file_stdio.cc: Same.
2003-12-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13189
* include/ext/enc_filebuf.h: Fix.
* include/bits/fstream.tcc: Tweak formatting.
* include/bits/postypes.h: Same.
* include/bits/sstream.tcc: Same.
* include/bits/streambuf.tcc: Same.
* testsuite/ext/stdio_filebuf.cc: Split.
* testsuite/ext/stdio_filebuf_2.cc: Split.
* testsuite/ext/stdio_sync_filebuf_char.cc: Split.
* testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
* testsuite/ext/enc_filebuf/char/13189.cc: New.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
* testsuite/ext/stdio_filebuf/char/1.cc: New.
* testsuite/ext/stdio_filebuf/char/2.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
* testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
2003-12-05 Carlo Wood <carlo@alinoe.com>
PR libstdc++/13045
* bits/demangle.h
namespace __gnu_cxx::demangler
(enum substitution_nt): Removed trailing comma.
(implementation_details): Added.
(session<Allocator>::M_implementation_details): Added.
(session<Allocator>::session): Pass implementation_details.
(session<Allocator>::decode_encoding): Same.
(session<Allocator>::decode_real): Added.
(_GLIBCXX_DEMANGLER_STYLE_VOID _GLIBCXX_DEMANGLER_STYLE_LITERAL
_GLIBCXX_DEMANGLER_STYLE_LITERAL_INT
_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Replaced with
implementation_details equivalent.
(session<Allocator>::decode_expression):
Use M_implementation_details instead of macros. Add extra parentheses
around 'larger than' operator in expressions in template arguments.
(session<Allocator>::decode_bare_function_type): Idem.
(session<Allocator>::decode_literal):
Idem, and call decode_real for floating literals.
(session<Allocator>::decode_type_with_postfix): Put the postfix
of the return type of (member) functions after the function
instead of after the return type. Also, put a space after the
prefix of qualified function pointers: "int (* const<space>".
* src/demangle.cc: include most dependent header file first.
* testsuite/demangle/regression/cw-16.cc: Updated two
and added three tests.
2003-12-04 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13284
* include/bits/stl_algo.h (__random_number): Remove.
(random_shuffle): Use rand, as permitted by DR 395.
* include/ext/algorithm: Same.
* linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
* acconfig.h: Same.
* crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
* config.h.in: Regenerated.
* configure: Same.
* aclocal.m4: Same.
2003-12-04 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12653
* include/std/std_bitset.h (operator>>): Implement resolution
of DR 303 [WP]: use widen('0') and widen('1').
* docs/html/ext/howto.html: Add an entry for DR 303.
* include/std/std_bitset.h (operator>>): Implement the common
requirements of formatted input functions (27.6.1.2.1).
* include/std/std_bitset.h (operator>>): Set the failbit when
nothing was extracted and _Nb != 0.
* testsuite/23_containers/bitset/input/1.cc: New.
2003-12-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12791
* include/bits/locale_facets.tcc (time_get::_M_extract_num):
Rewrite, stop the parsing as soon as a digit cannot possibly
lead to a final number within the bounds; otherwise, simplify,
avoiding __ctype.is() and atoi().
* testsuite/22_locale/time_get/get_date/char/12791.cc: New.
* testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: New.
* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
Minor tweak: a 4-digit integer cannot be bigger than 9999.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Use
type-correct wchar_t string literals.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
2003-12-02 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_get::do_get_year):
Avoid using a basic_string and calling a full blown strtol
(via __convert_to_v) for simple 2 or 4 digits, base 10,
positive integers; simplify.
2003-12-02 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/monetary_members.cc
(money_base::_S_construct_pattern): For case 3: and 4:
exchanging 'if (__precedes)' and 'if (__space)' allows
to factor out a few more assignments.
2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_ios.h (basic_ios::setstate): Revert.
* include/bits/istream.tcc: Only call setstate if __err != goodbit.
* include/bits/ostream.tcc: Same.
* testsuite/27_io/basic_ios/exceptions/char/2.cc: New.
* testsuite/testsuite_io.h (__gnu_test::fail_streambuf): Make
internal buffer non-static.
2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/17_intro/C++STYLE: Add exception bits.
* include/bits/fstream.tcc: Add location info to exception strings.
* include/bits/stl_construct.h: Formatting tweaks.
2003-12-01 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/10378
* include/bits/allocator.h (allocator::construct): Implement
resolution of DR 402 [Ready] (in Revision 28).
* include/bits/allocator_traits.h (__allocator::construct):
Likewise.
* include/bits/stl_construct.h (_Construct): Likewise.
* testsuite/20_util/allocator_members.cc: Move to...
* testsuite/20_util/allocator/1.cc: ... here.
* testsuite/20_util/allocator/10378.cc: New.
* docs/html/ext/howto.html: Add an entry for DR 402.
2003-11-30 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_in,
codecvt::do_length): More minor tweaks.
2003-11-30 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_in):
Minor stylistic tweak.
2003-11-30 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_put::do_put(..., bool)):
Minor tweaks, consistent with the style used in other facets.
2003-11-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/fstream.tcc (underflow): Minor tweaks in
preparation for libstdc++/13217.
2003-11-29 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc:
Tweak for a few small problems (fix timings, use VERIFY..)
2003-11-28 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: Remove.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: New,
the original third testcase for libstdc++/13171 belong here.
2003-11-28 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc:
Remove extraneous wchar_t lines.
2003-11-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/11544
PR libstdc++/11603
* include/bits/fstream.tcc (underflow): Throw ios_base::failure
upon incomplete or invalid byte sequences in the file.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: New.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: New.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: New.
2003-11-27 Paolo Carlini <pcarlini@suse.de>
* include/std/std_streambuf.h (__copy_streambufs): Remove
the first, unused, basic_ios<> parameter.
* src/streambuf-inst.cc: Likewise.
* include/bits/streambuf.tcc: Likewise.
* include/bits/istream.tcc (operator>>(__streambuf_type*)):
Tweak accordingly the call.
* include/bits/ostream.tcc (operator<<(__streambuf_type*)):
Likewise.
* include/bits/streambuf.tcc (__copy_streambufs): Remove
redundant try/catch.
2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9371
PR libstdc++/9546
PR libstdc++/10093
PR libstdc++/10095
* include/bits/basic_ios.h (basic_ios::setstate): Elide if goodbit.
(basic_ios::_M_setstate): Consolidate common error handling code.
* include/bits/basic_ios.tcc: Tweak.
* include/bits/fstream.tcc: Tweak.
* include/bits/istream.tcc: Use _M_setstate for common exception
handling. Move setstate calls after catch.
(basic_istream::tellg): Check for exceptions thrown by streambuf
virtual functions.
(basic_istream::seekg): Same.
* include/bits/ostream.tcc: Same, but for ostream.
(basic_ostream::flush): Check for exceptions thrown by streambuf
virtual functions.
(basic_istream::tellp): Same.
(basic_istream::seekp): Same.
* include/bits/locale_facets.tcc: Tweak.
* include/bits/streambuf.tcc: Tweak.
(__copy_streambufs): Propagate exceptions.
* testsuite/testsuite_io.h (fail_streambuf): New.
(fail_num_get): New.
(fail_num_put): New.
(facet_error): New.
(underflow_error): New.
(overflow_error): New.
(positioning_error): New.
* testsuite/27_io/basic_istream/exceptions/char/9561.cc: Tweak.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/
exceptions_badbit_throw.cc, exceptions_failbit.cc,
exceptions_failbit_throw.cc: New.
* testsuite/27_io/basic_istream/extractors_other/char/
error_failbit.cc, exceptions_badbit_throw.cc,
exceptions_failbit_throw.cc, exceptions_null.cc: New.
* testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
New.
* testsuite/27_io/basic_istream/tellg/char/exceptions_badbit_throw.cc:
New.
* testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
New.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
exceptions_badbit_throw.cc, exceptions_failbit_throw.cc: New.
* testsuite/27_io/basic_ostream/inserters_other/char/
error_failbit.cc, exceptions_badbit_throw.cc,
exceptions_failbit_throw.cc, exceptions_null.cc: New.
* testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
New.
* testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
New.
2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12297
* include/bits/istream.tcc
(basic_istream::sentry::sentry): Set failbit and eofbit when eof.
* testsuite/27_io/basic_istream/sentry/char/12297.cc: New.
2003-11-26 Paolo Carlini <pcarlini@suse.de>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/13171
* include/bits/fstream.tcc (imbue): Relax the conditions under
which the function succeeds: allow for two consecutive calls with
the same name; state dependent encodings are ok even after open
if at the beginning of the file; don't check seekoff return value
(pipes, cin, cout, etc...)
* testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
* testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
correctly use the UTF-8 locale appearing in the PR.
2003-11-26 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h
(__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
_M_truename and _M_falsename: the constructor always does
it immediately before the _M_cache call.
2003-11-25 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_length):
Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
former is very fast, but stops if encounters a NUL.
(codecvt::do_out): Tweaks.
(codecvt::do_in): Tweaks, improve the code dealing with errors.
* testsuite/performance/wchar_t_length.cc: New.
2003-11-24 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_in):
Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
former is very fast, but stops if encounters a NUL.
(codecvt::do_out): Tweak.
* testsuite/performance/wchar_t_in.cc: New.
2003-11-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h
(__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
in order to avoid memory leaks; simplify a bit.
2003-11-24 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/streambuf_iterator.h (ostreambuf_iterator): Remove
non-standard throw specs.
* testsuite/24_iterators/istreambuf_iterator.cc: Split into...
* testsuite/24_iterators/istreambuf_iterator/1.cc
* testsuite/24_iterators/istreambuf_iterator/2.cc
* testsuite/24_iterators/istreambuf_iterator/2627.cc
* testsuite/24_iterators/ostreambuf_iterator.cc: Split into...
* testsuite/24_iterators/ostreambuf_iterator/1.cc
* testsuite/24_iterators/ostreambuf_iterator/2.cc
* testsuite/24_iterators/reverse_iterator/1.cc: Just compile,
don't link.
* include/bits/allocator.h: Formatting tweak.
2003-11-24 Paolo Carlini <pcarlini@suse.de>
* src/locale_init.cc: Cosmetic reformatting.
2003-11-23 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (__add_grouping):
Cosmetic reformatting.
2003-11-23 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (_M_extract_float,
_M_extract_int): Remove a wrong comment and simplify
the corresponding code using char_traits::find().
2003-11-22 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/monetary_members.cc
(money_base::_S_construct_pattern): Factor out two assignments.
2003-11-22 Paolo Carlini <pcarlini@suse.de>
* include/bits/istream.tcc (getline(basic_string<>&)):
Fix error in comment of the previous commit.
2003-11-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12593
* include/bits/istream.tcc (operator>>(basic_string<>&),
getline(basic_string<>&)): Implement resolution of DR 91 [WP];
fix some minor issues with the exit conditions.
* docs/html/ext/howto.html: Add an entry for DR 91.
2003-11-21 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/monetary_members.cc
(money_base::_S_construct_pattern): Factor out an assignment.
2003-11-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12882 (partial)
* acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
and ftello64 too.
* include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
and ftello64 if available.
* aclocal.m4: Regenerate.
* configure: Ditto.
2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
* include/debug/formatter.h: Use _Tp as template argument.
* src/debug.cc: Same, instantiate std::size_t.
2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13109
* include/debug/formatter.h (_Error_formatter::_M_format_word): New.
* src/debug.cc (__gnu_debug): Format.
(_Error_formatter::_M_format_word): Define, use, instantiate.
2003-11-20 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/11602
* config/locale/gnu/codecvt_members.cc (codecvt::do_out):
Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
former is very fast, but stops if encounters a NUL.
* testsuite/performance/wchar_t_out.cc: New, from the PR.
2003-11-19 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (do_out): If
we can upper bound the total number of external chars
to something smaller than __to_end - __to, avoid the
temporary buffer, the memcopy and simplify the loop.
* config/locale/generic/codecvt_members.cc (do_out):
Likewise.
2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
* testsuite/lib/libstdc++.exp: Add DYLD_LIBRARY_PATH for darwin.
* testsuite/libstdc++-dg/normal.exp: Add -multiply_defined suppress
flag.
2003-11-18 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/configopts.html, docs/html/debug.html,
docs/html/documentation.html, docs/html/explanations.html,
docs/html/install.html, docs/html/17_intro/contribute.html,
docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
docs/html/ext/howto.html, docs/html/ext/sgiexts.html: Add <link> tags.
2003-11-18 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12868
* include/bits/fstream.tcc (imbue): For encodings != -1 it's
always ok to imbue a new locale, provided seekoff(0, cur, ...)
doesn't fail, of course.
(underflow): In order for the above to work, deal gracefully
with _M_codecvt->in returning codecvt_base::error while
(__ilen = __iend - this->eback()) > 0: it just means __ilen
correctly converted internal characters before an error.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: New.
2003-11-17 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc: Fix typo in comment.
2003-11-17 Paolo Carlini <pcarlini@suse.de>
* testsuite/22_locale/num_put/put/char/8.cc: New test,
summarizing the discussion ensuing libstdc++/12988.
* testsuite/22_locale/num_put/put/wchar_t/8.cc: Ditto.
2003-11-15 Paolo Carlini <pcarlini@suse.de>
* include/std/std_fstream.h: Tweak a comment.
2003-11-15 Roger Sayle <roger@eyesopen.com>
* include/c_std/std_cmath.h: Don't import C99's float transcendentals
into the __gnu_cxx::__c99_binding namespace.
(acos, asin, atan, atan2, ceil, cosh, exp, floor, fmod, frexp,
ldexp, log, log10, modf, pow, sinh, tan, tanh): Implement using
GCC's math builtins, i.e. __builtin_foo.
* libmath/stubs.c (acosf, acosl, asinf, asinl, atanf, atanl,
ceilf, ceill, floorf, floorl, fmodf, fmodl, frexpf, frexpl,
ldexpf, ldexpl, modff, modfl): Provide stub implementations.
2003-11-14 Paolo Carlini <pcarlini@suse.de>
* testsuite/22_locale/locale/cons/12352.cc: Use
__gnu_test::try_named_locale.
2003-11-14 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/howto.html: Add entries for DR 63, 75
and 305; tweak entries for DR 60 and 328.
2003-11-13 Douglas Gregor <gregod@cs.rpi.edu>
* docs/html/debug.html: Users are allowed to specialize in
namespace __gnu_debug, unlike in the Apple version of the debug
mode. Clear up a confusing double-negative. Note that
std::basic_string does provide extra debugging capabilities, but
not safe iterators.
* include/bits/basic_string.tcc: Make sure there's never an
ambiguity when calling __is_null_pointer.
* include/debug/deque: (deque::erase) Properly handle invalidation
when erasing at the end of the deque.
* include/debug/vector: (vector::swap): Swap _M_guaranteed_capacity.
(vector::clear): Set the guaranteed capacity to 0.
* testsuite/23_containers/deque/invalidation/4.cc: (test04): Test
iterator invalidation when erasing at the end of the deque.
2003-11-13 Paolo Carlini <pcarlini@suse.de>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/13007
* include/bits/fstream.tcc (imbue): Don't touch the stored
locale.
* include/std/std_streambuf.h (imbue): According to the
standard, base class version does nothing.
(pubimbue): Store the locale.
* testsuite/27_io/basic_filebuf/imbue/char/13007.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
* testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: New.
* testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: New.
* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: New.
* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: New.
2003-11-13 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/12594
* include/bits/ostream.tcc
(basic_ostream::operator<<(basic_ostream& (*)(basic_ostream&)),
basic_ostream::operator<<(basic_ios& (*)(basic_ios&)),
basic_ostream::operator<<(ios_base& (*)(ios_base&))):
Implement the resolution of DR 60 (TC): These are not formatted
output functions so don't construct sentry objects and don't
catch exceptions.
(basic_ostream::put, basic_ostream::write): Implement the
resolution of DR 63 (TC) by catching exceptions and setting
badbit.
(basic_ostream::flush): Implement the resolution of DR 60 (TC):
This is not an unformatted output function so don't construct
a sentry object.
* testsuite/testsuite_io.h (sync_streambuf): Define.
* testsuite/27_io/basic_ostream/flush/char/2.cc: New test.
* testsuite/27_io/basic_ostream/inserters_other/char/5.cc: New test.
* testsuite/27_io/basic_ostream/put/char/1.cc: New test.
* testsuite/27_io/basic_ostream/write/char/1.cc: New test.
2003-11-13 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1:
Fix, closely following the testcase included in the PR.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: Ditto.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: Ditto.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: Ditto.
2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/17_intro/configury.html: XHTML tweak.
2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/debug_mode.html: XHTML fixes.
2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/debug_mode.html: Update.
* docs/html/17_intro/TODO: Update.
2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Move using directive...
* include/debug/formatter.h: ...here.
2003-11-12 Carlo Wood <carlo@alinoe.com>
PR libstdc++/12947
* bits/demangle.h
(_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS): Added.
(_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Added.
(session<Allocator>::next_peek() const): Added.
(decode_non_negative_decimal_integer(string_type&)):
Renamed from decode_decimal_integer(string_type&).
(session<Allocator>::decode_nested_name):
Decode <template_param> as well.
(session<Allocator>::add_substitution):
Handle <template-param> for <nested-name>'s.
(enum xary_nt): Added.
(struct entry_st): Added member `xary_nt type' instead of `bool unary'.
(symbol_name_table_c): Updated for `entry_st::type' and additional
operators (unary `operator+' and `sizeof(type)').
(offset_table_c): Updated for new operators (causing a new hash map).
(decode_operator_name): Match the updated hash map.
(session<Allocator>::decode_expression):
Support for `sizeof ([typename] type)' (st),
dependent names (sr) and casting operator (cv). Handle
`entry_st::type'. Handle _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
and _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME.
(session<Allocator>::decode_type_with_postfix):
Support `extern "C"' function types (FY).
* testsuite/demangle/regression/cw-16.cc: Added tests for the
added functionality.
* testsuite/demangle/regression/3111-2.cc: sizeof now has a space
appended.
2003-11-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12875
* include/bits/fstream.tcc (setbuf): Don't do anything
after open(), in particular don't discard data.
(_M_allocate_internal_buffer): Tweak to not allocate memory
in case the buffer is provided by the user via setbuf.
* include/ext/stdio_filebuf.h: Tweak comment.
* testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
* testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
setbuf does nothing after open().
* testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
2003-11-11 Doug Gregor <gregod@cs.rpi.edu>
* docs/html/debug.html: Document libstdc++ debug mode.
* docs/html/debug_mode.html: Document libstdc++ debug mode design.
* docs/html/test.html: Document how to test under debug mode.
* docs/html/17_intro/howto.html: Document debug-mode macros.
* include/Makefile.am: Install debug-mode headers.
* src/Makefile.am: Include debug.cc.
* include/bits/basic_string.tcc:
(basic_string::_S_construct): Fix NULL pointer check.
(__is_null_pointer): New.
Add precondition annotations.
* include/bits/stream_iterator.h (istream_iterator,
ostream_iterator): Added precondition annotations.
* include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
* include/bits/stl_queue.h (queue, priority_queue): Ditto.
* include/bits/stl_stack.h (stack): Ditto.
* include/bits/basic_string.h (basic_string): Ditto.
* include/bits/basic_string.tcc (basic_string): Ditto.
* include/std/std_memory.h (auto_ptr): Ditto.
* include/std/std_valarray.h (valarray): Ditto.
* include/bits/stl_algo.h: Added algorithm precondition
annotations.
* include/bits/stl_algobase.h: Added algorithm precondition
annotations.
* include/bits/stl_numeric.h: Ditto.
* include/ext/algorithm: Added algorithm precondition
annotations.
(__is_heap): Moved away from here.
* include/bits/stl_heap.h: Added algorithm precondition
annotations.
(__is_heap): Moved to the top of this file.
(__is_heap): Added iterator range overloads.
* testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
with changes in std_memory.h.
* testsuite/23_containers/list/operators/4.cc: Don't verify
performance guarantees when in debug mode.
* testsuite/23_containers/bitset/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/2.cc: New.
* testsuite/23_containers/deque/invalidation/3.cc: New.
* testsuite/23_containers/deque/invalidation/4.cc: New.
* testsuite/23_containers/list/invalidation/1.cc: New.
* testsuite/23_containers/list/invalidation/2.cc: New.
* testsuite/23_containers/list/invalidation/3.cc: New.
* testsuite/23_containers/list/invalidation/4.cc: New.
* testsuite/23_containers/map/invalidation/1.cc: New.
* testsuite/23_containers/map/invalidation/2.cc: New.
* testsuite/23_containers/multimap/invalidation/1.cc: New.
* testsuite/23_containers/multimap/invalidation/2.cc: New.
* testsuite/23_containers/multiset/invalidation/1.cc: New.
* testsuite/23_containers/multiset/invalidation/2.cc: New.
* testsuite/23_containers/set/invalidation/1.cc: New.
* testsuite/23_containers/set/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/1.cc: New.
* testsuite/23_containers/vector/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/3.cc: New.
* testsuite/23_containers/vector/invalidation/4.cc: New.
* testsuite/25_algorithms/heap.cc: Don't verify
performance guarantees when in debug mode.
* include/debug/bitset: New.
* include/debug/debug.h: New.
* include/debug/deque: New.
* include/debug/formatter.h: New.
* include/debug/hash_map: New.
* include/debug/hash_map.h: New.
* include/debug/hash_multimap.h: New.
* include/debug/hash_set: New.
* include/debug/hash_set.h: New.
* include/debug/hash_multiset.h: New.
* include/debug/list: New.
* include/debug/map: New.
* include/debug/map.h: New.
* include/debug/multimap.h: New.
* include/debug/multiset.h: New.
* include/debug/safe_base.h: New.
* include/debug/safe_iterator.h: New.
* include/debug/safe_iterator.tcc: New.
* include/debug/safe_sequence.h: New.
* include/debug/set: New.
* include/debug/set.h: New.
* include/debug/string: New.
* include/debug/vector: New.
* src/debug.cc: New.
* config/linker-map.gnu: Add debug mode symbols.
2003-11-11 Benjamin Kosnik <bkoz@redhat.com>
* src/string-inst.cc: Tweak namespaces.
* src/misc-inst.cc: Same.
* docs/html/debug.html: Edits.
* config/link-map.gnu: Remove cruft.
* include/bits/c++config: Add in namespace associations.
* include/std/std_bitset.h: Adjust namespace to __gnu_norm,
comment tweaks.
* include/bits/deque.tcc: Same.
* include/bits/list.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/vector.tcc: Same.
* include/std/std_algorithm.h: Remove markup comments.
* include/std/std_functional.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_numeric.h: Same.
* include/std/std_utility.h: Same.
* include/bits/stl_queue.h: Formatting tweaks.
* include/bits/stl_stack.h: Same.
* include/std/std_deque.h: Include debugging version in debug mode.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_queue.h: Use deque, vector.
* include/std/std_stack.h: Same.
2003-11-09 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (_M_insert_int,
_M_insert_float): Move a couple of vars inside an if block.
2003-11-09 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12971
* include/bits/locale_facets.tcc
(money_put::do_put(..., long double)): Fix conversion
specification as per DR 328 [WP].
* testsuite/22_locale/money_put/put/char/12971.cc: Add.
* testsuite/22_locale/money_put/put/wchar_t/12971.cc: Ditto.
* docs/html/ext/howto.html: Add entry for DR 328.
2003-11-08 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12967
* include/bits/list.tcc (merge): Implement resolution of
DR 300 [WP].
* docs/html/ext/howto.html: Add entry for DR 300; tweak entry
for DR 231.
* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
Import R27.
2003-11-07 Jonathan Wakely <redi@gcc.gnu.org>
* libsupc++/vec.cc: Conform to C++STYLE.
2003-11-07 Carlo Wood <carlo@alinoe.com>
PR libstdc++/12736
* bits/demangle.h (qualifier_list<Allocator>::decode_KVrA): Added.
(qualifier_list<Allocator>::decode_qualifiers): Collect concatenated
K, V, r and A qualifiers before processing them as a group.
* testsuite/demangle/abi_text/01.cc: Reordered CV-qualifiers.
* testsuite/demangle/regression/cw-16.cc: New.
2003-11-07 Robert Millan <robertmh@gnu.org>
* configure.host: Add kfreebsd*-gnu and knetbsd*-gnu.
* crossconfig.m4: Likewise.
* configure: Regenerate.
2003-11-07 Carlo Wood <carlo@alinoe.com>
* include/bits/demangle.h
(qualifier_list<Allocator>::decode_qualifiers(string_type&,
string_type&, bool member_function_pointer_qualifiers):
Always separate the '[' of an array type with a space from
what is left of it, except when that is the closing bracket
of another array dimension.
2003-11-07 Carlo Wood <carlo@alinoe.com>
* include/bits/demangle.h
(qualifier_list<Allocator>::decode_qualifiers(string_type&,
string_type&, bool) const): Made const.
(qualifier_list<Allocator>::M_printing_suppressed): Added mutable.
(_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
std::ostream& operator<<(std::ostream&, qualifier const&),
std::ostream& operator<<(std::ostream&, qualifier_list const&),
qualifier_list<Allocator>::decode_qualifiers(string_type&,
string_type&, bool) const,
session<Allocator>::decode_type_with_postfix(string_type&,
string_type&, qualifier_list<Allocator>*))
Added and/or changed debug-only hooks and code.
2003-11-04 Jeffrey D. Oldham <oldham@codesourcery.com>
* libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
immediately return. This reflects a C++ ABI change 2003 Nov 03.
(__cxa_vec_delete3): Likewise.
2003-11-03 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/12790
* include/bits/fstream.tcc: Delete _M_last_overflowed.
(basic_filebuf::basic_filebuf): Initialize _M_state_last.
(basic_filebuf::open, basic_filebuf::close): Assign
_M_state_beg to _M_state_cur and _M_state_last.
(basic_filebuf::close): Call _M_terminate_output to handle
unshift and flushing.
(basic_filebuf::underflow): Assign _M_state_last, throw
exception instead of calling abort when codecvt::max_length()
is bad.
(basic_filebuf::seekoff): Use _M_state_last when calling
codecvt::length(), pass correct state to _M_seek.
(basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
(basic_filebuf::_M_seek): Add __state_type parameter,
set _M_state_cur correctly, store the resulting state in
the return value and use _M_terminate_output to handle
flushing and unshift.
(basic_filebuf::_M_terminate_output): Flush contents of
output buffer, if any, then call codecvt::unshift as
needed and output the result.
(basic_filebuf::sync): Move here, don't modify _M_writing
or _M_reading.
* include/std/std_fstream.h
(basic_filebuf::_M_state_last): Declare it.
(basic_filebuf::_M_last_overflowed): Delete.
(basic_filebuf::_M_seek): Add __state_type parameter.
(basic_filebuf::sync): Declare only.
(basic_filebuf::_M_output_unshift): Delete.
(basic_filebuf::_M_terminate_output): Declare it.
* testsuite/testsuite_character.h:
Define character class and state class plus char_traits and
codecvt specializations for same for testing support for
stateful encodings.
* testsuite/27_io/basic_filebuf/close/12790-1.cc,
* testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
* testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
* testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
* testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
* testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
* testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
* testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
* testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
* testsuite/27_io/basic_filebuf/open/12790-1.cc,
* testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
* testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
* testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
* testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
* testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
* testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
* testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
* testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
* testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
* testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
* testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
* testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
* testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
* testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
* testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
* testsuite/27_io/basic_filebuf/sync/char/1.cc,
* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
New tests.
* testsuite/27_io/basic_filebuf/3.cc,
* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
* testsuite/27_io/basic_fstream/3.cc,
* testsuite/27_io/basic_ifstream/3.cc,
* testsuite/27_io/basic_ofstream/3.cc:
Use streamoff as off_type and fpos<state_type> as pos_type.
* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
* testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
Check that sync does *not* set _M_writing to false.
2003-11-03 Anthony Green <green@redhat.com>
* libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
they're used.
2003-11-03 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h (time_get::_M_extract_name): Add
ctype argument.
* include/bits/locale_facets.tcc: Same, use it to allow
capitalized names.
* include/bits/fstream.tcc: Spacing tweak.
* include/bits/istream.tcc: Same.
* include/bits/ostream.tcc: Same.
2003-10-30 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
__mod is only assigned, never used its value, remove it.
2003-10-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_get::do_get_year):
Absolutely avoid dereferencing end iterators.
(time_put::put): Minor clean up.
* include/bits/locale_facets.tcc: Cosmetic reformattings.
2003-10-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_float):
Revert the last commit, is not correct, sorry.
2003-10-29 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc: Add back <cmath> and
<cstdlib>.
* include/bits/locale_facets.tcc (num_get::_M_extract_float):
Clean up.
2003-10-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_put::put): Absolutely
avoid dereferencing end iterators; clean up.
* include/bits/locale_facets.tcc (num_get::_M_extract_float,
num_get::_M_extract_int): Minor tweak.
2003-10-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc: Remove some unnecessary
includes.
* config/locale/generic/c_locale.cc: Include <cerrno> here.
* config/locale/gnu/c_locale.cc: Likewise.
2003-10-28 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc
(money_get<>::do_get(..., string_type&)): Absolutely avoid
dereferencing end iterators; general clean up.
2003-10-28 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_get::_M_extract_num):
Absolutely avoid dereferencing end iterators.
(time_get::_M_extract_name): Likewise.
* include/bits/locale_facets.tcc
(time_get::_M_extract_via_format, case 'e'): Don't try to
be smart wrt returning the right __beg in case of parse
error, time_get::_M_extract_num must be fixed instead.
2003-10-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12778
* acinclude.m4 (GLIBCXX_CHECK_LFS): Use the C++ compiler.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2003-10-27 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/17_intro/TODO: Add links.
* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
Uncomment.
2003-10-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12750
* include/bits/locale_facets.tcc
(time_get::_M_extract_via_format): Deal with code 'e'.
* testsuite/22_locale/time_get/get_date/char/12750.cc: New.
* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Ditto.
* include/bits/locale_facets.tcc
(time_get::_M_extract_via_format): Tweak to absolutely avoid
dereferencing end iterators.
* include/bits/locale_facets.h (__verify_grouping):
Const-ify second parameter.
* include/bits/locale_facets.tcc (__verify_grouping): Ditto.
* src/locale-inst.cc (__verify_grouping): Ditto.
2003-10-27 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_float):
Various things: 1- Avoid absolutely end iterator dereferences;
2- Improve performance-wise the code skipping leading zeros;
3- Fix two bugs wrt early bail out in case of parsing errors
(see testcases); 4- General clean up.
(num_get::_M_extract_int): Likewise, except 3-. Additionally,
use __builtin_expect to favor base 10 inputs.
* testsuite/22_locale/num_get/get/char/7.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/7.cc: Ditto.
2003-10-26 Paolo Carlini <pcarlini@suse.de>
* testsuite/22_locale/money_put/put/char/1.cc: Clean up.
* testsuite/22_locale/money_put/put/wchar_t/1.cc: Ditto.
2003-10-25 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_int):
__pos in only incremented, never used its value, remove it.
2003-10-24 Robert Millan <robertmh@gnu.org>
* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add kfreebsd*-gnu
and knetbsd*-gnu.
* aclocal.m4: Regenerated.
* configure: Regenerated.
2003-10-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get::do_get(...,
long double&): Properly size the temporary buffer.
* testsuite/22_locale/money_get/get/char/11.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/11.cc: Ditto.
* include/bits/locale_facets.tcc (num_put::_M_group_int,
num_put::_M_group_float, money_put::do_put(..., const
string_type&), collate::do_compare, collate::do_transform):
Prefer basic_string::data() to c_str() when the '\0'
terminator is not really needed.
2003-10-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (__verify_grouping):
Prefer '=' to an unnecessary '&='.
2003-10-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
Tweak my fix for libstdc++/12657.
2003-10-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get::do_get(...,
string_type&): Minor tweak to the previous commit.
2003-10-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get::do_get(...,
string_type&): Disregard the previous commit: doesn't hurt but
doesn't accomplish anything useful either. This is the right
one, speeding up greatly the function in case of early fail.
2003-10-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get::do_get(...,
string_type&): Move an if block, thus minimizing the amount
of code processed anyway when __tmp_units.size() == 0.
2003-10-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc
(time_get<>::_M_extract_via_format): Deal with case 'C' too,
equivalent to 'y'.
2003-10-23 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/documentation.html: Add a pointer to the doxygen style
guide.
* docs/html/17_intro/TODO: Update.
* docs/html/test.html: Add instructions for running a subset of
tests, update.
2003-10-23 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_get<>::do_get(...,
string_type&)): Use find_first_not_of to strip leading
zeros; if __tmp_units == "0" never prefix it with '-';
always fail if __tmp_units is empty.
* testsuite/22_locale/money_get/get/char/10.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/10.cc: Ditto.
2003-10-23 Phil Edwards <phil@codesourcery.com>
* config/os/vxworks/ctype_noninline.h: Adjust ctor to match
2003-10-21 change.
2003-10-22 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (__int_to_char): Remove
the const int parameter.
(_M_insert_int): Update caller.
* src/locale-inst.cc (__int_to_char): Update instantiations.
2003-10-22 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h: Correct byname facets for "C"
locale.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/generic/messages_members.h: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/messages_members.h: Same.
* include/bits/codecvt.h: Same.
* src/ctype.cc: Same.
* testsuite/22_locale/codecvt_byname/1.cc: New.
* testsuite/22_locale/collate/1.cc: Edit.
* testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
* testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
* testsuite/22_locale/ctype/1.cc: Derivation tests.
* testsuite/22_locale/ctype/11844.cc: Move...
* testsuite/22_locale/ctype_base/11844.cc: ...here.
* testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
* testsuite/22_locale/ctype_byname/1.cc: Name.
* testsuite/22_locale/messages_byname/1.cc: New.
* testsuite/22_locale/messages_byname/named_equivalence.cc: New.
* testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
* testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
* testsuite/22_locale/numpunct/1.cc: Edit.
* testsuite/22_locale/numpunct_byname/2.cc: Move...
* testsuite/22_locale/numpunct/members/char/3.cc: ...here.
* testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
* testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
2003-10-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/8610
* acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
checking for the availability of int64_t.
(GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
* configure.ac: Call here.
* acconfig.h: Add undef for the corresponding symbols.
* config/io/basic_file_stdio.cc (__basic_file<char>::open):
Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
(__basic_file<char>::seekoff): Likewise, call lseek64 when
available, otherwise lseek, checking the __off parameter.
* include/bits/postypes.h: Typedef __streamoff_base_type
to int64_t if available, otherwise long long.
* aclocal.m4: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
* acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
Use AC_TRY_LINK instead of AC_TRY_COMPILE.
2003-10-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12657
* include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
Implement resolution of DR 292 (WP).
* docs/html/ext/howto.html: Add entry for DR 292.
2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/mt_allocator.h: Change include to gthr.h.
* include/ext/rope: Same. Add _Refcount_base definitions.
* include/ext/pool_allocator.h: Adjust namespaces.
* include/bits/stl_threads.h (_Refcount_base): Move.
Put remaining into namespace __gnu_cxx.
2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9858
* include/bits/locale_facets.h (ctype<char>): Remove
__ctype_abstract_base.
(ctype<char>::do_is): Remove.
(ctype<char>::do_scan_is): Remove.
* src/ctype.cc: Same. Inline the rest.
* testsuite/22_locale/ctype/is/char/9858.cc: New.
* config/os/aix/ctype_noninline.h: Adjust ctor.
* config/os/bsd/freebsd/ctype_noninline.h: Same.
* config/os/bsd/netbsd/ctype_noninline.h: Same.
* config/os/djgpp/ctype_noninline.h: Same.
* config/os/generic/ctype_noninline.h: Same.
* config/os/gnu-linux/ctype_noninline.h: Same.
* config/os/hpux/ctype_noninline.h: Same.
* config/os/irix/irix5.2/ctype_noninline.h: Same.
* config/os/irix/irix6.5/ctype_noninline.h: Same.
* config/os/mingw32/ctype_noninline.h: Same.
* config/os/newlib/ctype_noninline.h: Same.
* config/os/qnx/qnx6.1/ctype_noninline.h: Same.
* config/os/solaris/solaris2.5/ctype_noninline.h: Same.
* config/os/solaris/solaris2.6/ctype_noninline.h: Same.
* config/os/solaris/solaris2.7/ctype_noninline.h: Same.
* config/os/windiss/ctype_noninline.h: Same.
2003-10-21 Paolo Carlini <pcarlini@suse.de>
* src/locale.cc: Tweak a comment.
* src/localename.cc: Move a comment.
2003-10-20 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10081
* testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
* testsuite_hooks.cc: Same.
* 22_locale/numpunct/members/pod/1.cc: Edit.
* 22_locale/numpunct/members/pod/2.cc: Same.
* 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
* 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
* 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
* 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
* 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
* 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
* 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
* 27_io/basic_istream/sentry/pod/1.cc: New.
* 27_io/basic_ostream/sentry/pod/1.cc: New.
* 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
* 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
2003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
of external _MIPS_SIM_ABI32.
2003-10-20 Phil Edwards <phil@codesourcery.com>
* configure.ac: Fix comment typo.
* configure.host: Add vxworks to host_os switch.
* crossconfig.m4: Remove old commented os_include_dir variables
left over from autotools transition.
(*-vxworks): New stanza.
(*-windiss): Add missing symbols.
* configure: Regenerate.
* config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
New files.
* config/os/windiss/os_defines.h: Define __C9X__.
2003-10-19 David Edelsohn <edelsohn@gnu.org>
PR other/12506
* configure.host (aix4,aix*): Define os_include_dir to os/generic.
2003-10-18 Andreas Tobler <a.tobler@schweiz.ch>
* src/locale.cc (locale::_S_initialize): Re-apply workaround a
confusion of the use of the gthr API when __gthread_active_p()
returns true.
2003-10-17 Benjamin Kosnik <bkoz@redhat.com>
* src/Makefile.am: Add new files.
* src/Makefile.in: Regenerate.
* src/globals.cc: Split into..
* src/globals_io.cc: New.
* src/globals_locale.cc: New.
* src/ios.cc: Split into...
* src/ios_init.cc: New.
* src/ios_locale.cc: New.
* src/locale-inst.cc: Split into..
* src/wlocale-inst.cc: New.
* src/locale-misc-inst.cc: New.
* src/locale.cc, src/localename: Split into...
* src/locale_facets.cc: New.
* src/locale_init.cc: New.
* src/wstring-inst.cc: Add copyright info.
2003-10-16 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/11450
PR libstdc++/11543
PR libstdc++/12065
* config/io/basic_file_stdio.cc (__basic_file::seekoff):
Change return value from streampos to streamoff.
(__basic_file::seekpos): Delete.
* config/io/basic_file_stdio.h: Same.
* config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
* include/Makefile.am (bits_headers): Add bits/postypes.h.
* include/bits/char_traits.h: Include bits/postypes.h instead of
bits/fpos.h.
* include/bits/fstream.tcc (basic_filebuf::open,
basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
values, use == and != instead.
(basic_filebuf::_M_seek): Use explicit conversion from streamoff
to pos_type.
(basic_filebuf::imbue): Don't use ! on pos_type values, use
== instead. Don't use __check_facet(_M_codecvt) unless is_open().
* include/bits/postypes.h: New file.
Add __streamoff_base_type typedef, streamsize.
(streamoff, streampos, wstreampos): Define typedefs, with
streamoff defined as...
(streamoff): New class. Document implementation defined
aspects.
(fpos): New implementation. Document implementation defined
aspects.
* include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
explicit conversion from pos_type to off_type.
* include/std/std_iosfwd.h: Include bits/postypes.h instead
of bits/fpos.h.
* testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
* testsuite/27_io/fpos/11450.cc: New test.
* testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
* testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
* testsuite/27_io/types/3.cc: New test.
2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
* configure.host: Remove fpos_include_dir.
* configure.ac: Remove FPOS_INC_SRCDIR.
* configure: Regenerate.
* acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
* aclocal.m4: Regenerate.
* include/Makefile.am (host_headers): Remove fpos.h.
(bits_headers): Add postypes.h.
* include/Makefile.in: Regenerate.
* config/os/gnu-linux/fposh: Remove.
* config/os/generic/fpos.h: Remove.
* testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
* testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
* testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
* testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
* testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
* testsuite/27_io/fpos/mbstate_t/3.cc: Same.
* testsuite/27_io/objects/char/10.cc: Same.
2003-10-16 Paolo Carlini <pcarlini@suse.de>
* src/locale.cc (locale::locale(const char*)): ... one
more comparison missed in the previous commit.
2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
* acconfig.h: Add HAVE_DRAND48.
* crossconfig.m4: Remove ISATTY.
* aclocal.m4: Regenerated.
* config.h.in: Regenerated.
* configure: Regenerated.
2003-10-16 Bernardo Innocenti <bernie@develer.com>
* config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
__mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
Document SMP safeness of asm macros.
2003-10-16 Paolo Carlini <pcarlini@suse.de>
* src/locale.cc (locale::locale(const char*)): Tweak
a couple of comparisons to use basic_string operators.
2003-10-16 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12540
* config/locale/gnu/monetary_members.cc
(moneypunct<wchar_t, true/false>::_M_initialize_moneypunct):
Don't leak memory if new throws.
* src/locale.cc (locale::locale(const char*)): In order not
to leak memory in case new throws, use a basic_string type
for __res too and avoid strdup.
2003-10-14 Jeff Bailey <jbailey@nisa.net>
PR libstdc++/12562
* crossconfig.m4: Share the config between *-linux* and *-gnu*.
* configure: Regenerate.
2003-10-14 Carlo Wood <carlo@alinoe.com>
PR libstdc++/12600
* include/bits/demangle.h (session<Allocator>::
decode_unqualified_name(string_type& output)): Fail on a
<operator-name> when decoding <template-argument>.
* testsuite/demangle/regression/cw-15.cc: New.
2003-10-14 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11480
* include/bits/stl_algo.h (unique): Fix.
* testsuite/25_algorithms/unique.cc: Move to unique/1.cc.
* testsuite/25_algorithms/unique/11480.cc: New, from the PR.
* testsuite/25_algorithms/unique/2.cc: New.
2003-10-14 Paolo Carlini <pcarlini@unitus.it>
* src/localename.cc (_M_replace_categories, M_replace_facet):
Const-ify a couple of variables.
2003-10-14 Petur Runolfsson <peturr02@ru.is>
Andreas Tobler <a.tobler@schweiz.ch>
* src/locale.cc (locale::_S_initialize): Workaround a confusion
of the use of the gthr API when __gthread_active_p() returns true.
2003-10-12 Petur Runolfsson <peturr02@ru.is>
Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11460
* src/strstream.cc (pbackfail): Fix to use to_int_type.
* testsuite/backward/11460.cc: New, from the PR.
2003-10-12 Paolo Carlini <pcarlini@unitus.it>
* config/locale/ieee_1003.1-2001/codecvt_specializations.h:
Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
* include/bits/basic_string.tcc: Likewise.
* include/bits/ios_base.h: Likewise.
* include/bits/istream.tcc: Likewise.
* include/bits/locale_facets.tcc: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/stl_function.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_pair.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/streambuf_iterator.h
* include/std/std_iosfwd.h: Likewise.
* include/std/std_istream.h: Likewise.
* include/std/std_sstream.h: Likewise.
* include/std/std_streambuf.h: Likewise.
* src/ios.cc: Likewise.
* include/bits/c++config:
Comment out #define _GLIBCXX_RESOLVE_LIB_DEFECTS 1.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak a
dg-error directive due to removal of a blank line.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2003-10-12 Andreas Tobler <a.tobler@schweiz.ch>
Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11844/11740 (cont)
* config/os/generic/ctype_inline.h (ctype<char>::is):
Generically, use a bitmasksize of 15 (instead of 10);
Fix the logic to actually return (M & m) != 0 as per
22.2.1.1.2.
2003-10-11 Bernardo Innocenti <bernie@develer.com>
* crossconfig.m4 (*-uclinux*): New target.
* configure: Regenerate.
2003-10-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT))
Avoid unnecessarily calling __builtin_alloca and dealing
explicitly with width() smaller than zero.
(operator<<(basic_ostream&, char), operator<<(basic_ostream&,
const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
const char*), operator<<(basic_ostream<char, _Traits>&,
const char*), operator<<(basic_ostream, const basic_string&)):
Likewise.
2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Make more *_type_info bits visible.
Move new/delete bits back into GLIBCXX space.
* include/bits/locale_classes.h: Move _M_id out of line, so that
locale::id::_S_highwater can be removed from the export list.
* src/locale.cc (locale::id::_M_id): Define.
2003-10-09 Andreas Tobler <a.tobler@schweiz.ch>
* testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
SPARC64.
2003-10-09 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11844
* config/os/aix/ctype_base.h: Fix 'alnum' and 'graph'
to conform to the requirements of 22.2.1.
* config/os/bsd/freebsd/ctype_base.h: Likewise.
* config/os/djgpp/ctype_base.h: Likewise.
* config/os/generic/ctype_base.h: Likewise.
* config/os/gnu-linux/ctype_base.h: Likewise.
* config/os/hpux/ctype_base.h: Likewise.
* config/os/irix/irix6.5/ctype_base.h: Likewise.
* config/os/solaris/solaris2.6/ctype_base.h: Likewise.
* config/os/solaris/solaris2.7/ctype_base.h: Likewise.
* testsuite/22_locale/ctype/11844.cc: New.
* config/locale/generic/ctype_members.cc (do_is):
Generically, use a bitmasksize of 15 (instead of 10), since
we don't know the numerical encoding of the various categories
in the underlying /usr/include/ctype.h.
2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
* src/string-inst.cc: Prune.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2003-10-09 Petur Runolfsson <peturr02@ru.is>
* src/io-inst.cc: Don't include iostream.
* include/bits/ios_base.h (ios_base::failure): Use string.
* src/Makefile.am: Add ios_failure.cc.
* src/Makefile.in: Regenerate.
* src/ios.cc: Move ios_base::failure definitions to...
* src/ios_failure.cc: ...here. New.
2003-10-09 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9874
* include/bits/fstream.tcc (basic_filebuf::seekoff):
Move code needed for both seekoff and seekpos...
(basic_filebuf::_M_seek): ...here. New function.
(basic_filebuf::seekpos): Don't call seekoff, call _M_seek.
* include/std/std_fstream.h (basic_filebuf::_M_seek): Declare it.
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: New test.
* testsuite/22_locale/locale/cons/12438.cc: Increase memory limit.
2003-10-08 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc: More minor cosmetic
changes and const-ifications of some variables.
2003-10-07 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc: Minor cosmetic changes
and const-ifications of some variables.
* include/bits/locale_facets.tcc
(money_get::do_get(..., string_type&)): Simplify an if-else.
2003-10-06 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11740
* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is):
Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
* config/locale/generic/ctype_members.cc: Same.
* testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
2003-10-06 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (__pad<>::_S_pad):
Improve performance-wise: avoid one traits::copy, avoid
the __builtin_alloca, streamline.
2003-10-05 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc
(num_put::do_put(..., bool)): Prefer ?: to if-else.
(time_get::_M_extract_name): Qualify min with std::.
(__pad<>::_S_pad): Constify two variables; simplify an
if-else statement factoring out some code.
* include/bits/locale_facets.tcc: Minor cosmetic changes.
2003-10-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (num_get::_M_extract_float):
Constify a couple of variables.
(num_get::do_get(..., bool&)): Constify __c; prefer *__beg,
++__beg to *__beg++.
2003-10-04 Paolo Carlini <pcarlini@unitus.it>
Petur Runolfsson <peturr02@ru.is>
* include/ext/stdio_sync_filebuf.h: Don't include the whole
<fstream>, only <streambuf> and <cstdio>.
2003-10-04 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/12206
* include/bits/fstream.tcc (imbue): In case a codecvt facet
is not available, set _M_codecvt = 0.
* testsuite/27_io/basic_filebuf/imbue/12206.cc: New.
2003-10-02 Harald Boehme <boehme@informatik.hu-berlin.de>
PR libstdc++/12451
* libsupc++/cxxabi.h: Move forward declaration of __class_type_info.
2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_classes.h (locale::facet::_S_get_c_name): Add.
* src/locale.cc: Define.
* src/localename.cc: Use it.
* config/locale/generic/time_members.h: Same.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/time_members.h: Same.
2003-10-02 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/12232
* include/bits/fstream.tcc (seekoff): Ignore the openmode
argument; simplify.
* config/io/basic_file_stdio.h (__basic_file<char>::seekoff,
seekpos): Remove the openmode argument.
* config/io/basic_file_stdio.cc (__basic_file<char>::seekoff,
seekpos): Remove redundant placeholder for the openmode argument.
* testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: New.
* testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Tweak.
* testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
* src/locale.cc (locale::_S_initialize): Use __gthread_active_p.
(locale::facet::_S_get_c_locale): Same.
2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Export _S_get_c_locale instead of
_S_c_locale object.
2003-10-02 Petur Runolfsson <peturr02@ru.is>
* config/locale/generic/c_locale.cc
(category_names, locale::_S_categories): Const qualify.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/generic/time_members.h (__timepunct::__timepunct):
Copy string contents before assigning to _M_name_timepunct,
qualify strcpy and strlen with std::.
* config/locale/gnu/time_members.h: Same.
* config/locale/gnu/messages_members.h (messages::messages):
Copy string contents before assigning to _M_name_messages,
qualify strcpy and strlen with std::.
* config/os/gnu-linux/ctype_noninline.h
(ctype<char>::classic_table()): Don't call locale::classic().
* include/bits/locale_classes.h
(locale::_S_categories): Const qualify.
(locale::_S_once, locale::_S_initialize_once,
locale::facet::_S_once, locale::facet::_S_initialize_once,
locale::facet::_S_get_c_locale): Declare.
(locale::_S_initialize): Don't define.
(locale::facet::_S_c_locale): Make private.
(locale::facet::_S_c_name): Same, const qualify.
(locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
parameters, add throw() specifier.
* include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
messages::_M_name_messages): Const qualify.
* src/locale.cc
(locale::_S_once, locale::facet::_S_once): Define.
(locale::classic): Move initialization code...
(locale::_S_initialize_once): ...here.
(locale::_S_initialize): Call _S_initialize_once through
__gthread_once.
(locale::facet::_S_initialize_once): Initialize _S_c_locale.
(locale::facet::_S_get_c_locale): Call _S_initialize_once through
__gthread_once before returning _S_c_locale.
* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
Drop unused parameters, add throw() specifier, don't initialize
locale::facet::_S_c_locale and _S_c_name.
* config/locale/generic/messages_members.h:
Replace _S_c_locale with _S_get_c_locale().
* config/locale/gnu/c_locale.cc: Same.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/numeric_members.cc: Same.
* config/locale/gnu/time_members.cc: Same.
* config/os/gnu-linux/ctype_noninline.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/locale_facets.tcc: Same.
* src/codecvt.cc: Same.
* src/ctype.cc: Same.
2003-10-02 Carlo Wood <carlo@alinoe.com>
* include/bits/demangle.h (demangle<Allocator>::symbol(char const*)):
Decode symbols that start with _GLOBAL_[ID]_ differently: the
trailing part ends with a terminating zero and is not necessarily an
encoding.
* src/demangle.cc (): Same.
* testsuite/demangle/regression/cw-13.cc: Adjust for new output.
2003-10-02 Paolo Carlini <pcarlini@unitus.it>
* testsuite/22_locale/locale/cons/12438.cc: Use
__gnu_test::try_named_locale("").
2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
(GLIBCXX_CHECK_STDLIB_SUPPORT): Use it to test for lrand48
instead of drand48.
* acconfig.h (HAVE_DRAND48): Renamed to HAVE_LRAND48.
* crossconfig.m4 (*-freebsd*): Define HAVE_LRAND48 instead of
HAVE_DRAND48.
* config.h.in, configure: Regenerate.
* include/bits/stl_algo.h: Use _GLIBCXX_HAVE_LRAND48 to guard
lrand48 use.
2003-10-01 Nathan Myers <ncm@cantrip.org>
* include/bits/locale_facets.tcc (time_put::put): Avoid
expensive *__s++, in favor of *__s, ++__s.
2003-10-01 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (time_put::put): Minor
tweak to the previous commit.
2003-10-01 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/12439
* include/bits/locale_facets.tcc (time_put::put): Deal
with the three issues pointed out by the PR.
* testsuite/22_locale/time_put/put/char/12439_1.cc: New.
* testsuite/22_locale/time_put/put/char/12439_3.cc: New.
* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: New.
* testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: New.
* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: New.
2003-09-30 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_algo.h: Minor cosmetic reformattings.
2003-09-30 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_algo.h (search_n): Tweak, to spare the
first --__n.
2003-09-30 Paolo Carlini <pcarlini@unitus.it>
* testsuite/22_locale/locale/cons/12352.cc: Explicitly
qualify exception name.
2003-09-30 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/12438
* include/bits/locale_facets.tcc (locale::combine): Don't
leak memory if _M_replace_facet throws.
* testsuite/22_locale/locale/cons/12438.cc: New, from the PR.
* include/bits/locale_classes.h (locale::locale(const locale&,
_Facet*)): Tweak, use consistently _M_remove_reference.
2003-09-30 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/12352 (cont)
* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
Don't leak __cloc; don't leak if any of the _M_init_facet(...)
calls fail.
(locale::_Impl::_Impl(const _Impl&, size_t)): Tweak.
(locale::_Impl::~_Impl): Don't do anything if !_M_facets,
!_M_caches, !_M_names.
2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* configure.host: Handle Solaris 2.5 micro releases explicitly.
Remove wildcards from Solaris 2.6, 7-9: there were no
micro releases.
Treat Solaris 10 and up like 7-9.
2003-09-29 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_algo.h (search_n): Improve the previous
fix as suggested by Martin.
2003-09-29 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/12296
* include/bits/istream.tcc (peek): Set eofbit if sgetc
returns eof.
* testsuite/27_io/basic_istream/peek/char/12296.cc:
New, from the PR.
2003-09-29 Nathan Myers <ncm@cantrip.org>
Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11400
* include/bits/stl_algo.h (search_n):
Use iterator_traits<>::difference_type for __n.
* testsuite/25_algorithms/search_n/11400.cc: New, from the PR.
2003-09-29 Paolo Carlini <pcarlini@unitus.it>
* testsuite/22_locale/locale/cons/12352.cc:
Use __attribute__((unused)) for test.
2003-09-26 Ulrich Weigand <uweigand@de.ibm.com>
* testsuite/22_locale/time_put/put/char/2.cc (test_02): Allow either
"Son" or "So" as abbreviated name for Sunday in de_DE locale.
* testsuite/22_locale/time_put/put/wchar_t/2.cc (test_02): Likewise.
2003-09-26 Brad Spencer <spencer@infointeractive.com>
* testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc:
Explicitly qualify exceptions.
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Same.
* testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
* testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
2003-09-25 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/12352
* src/localename.cc (locale::_Impl::_Impl(const _Impl&,
size_t)): Don't leak if memory allocations for _M_facets,
_M_caches, and _M_names fail.
(locale::_Impl::_Impl(const char*, size_t)): Ditto.
(locale::_Impl::_M_replace_categories(const _Impl*,
category)): Ditto.
(locale::_Impl::_M_install_facet(const locale::id*,
const facet*)): Ditto.
* include/bits/locale_classes.h (locale::locale(const locale&,
_Facet*)): Don't leak memory.
* testsuite/22_locale/locale/cons/12352.cc: New, from the PR.
* src/localename.cc (locale::_Impl::_Impl(facet**, size_t,
bool)): Qualify with std:: strcpy, tweak.
* include/bits/locale_classes.h
(locale::_Impl::_M_check_same_name): Qualify strcmp.
2003-09-25 Brad Spencer <spencer@infointeractive.com>
PR libstdc++/6072
* acinclude.m4: Split out checks for vfwscanf, vswscanf, vwscanf,
wcstof, iswblank.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* crossconfig.m4: Add in wchar_t bits for solaris crosses.
* config/io/basic_file_stdio.cc: Guard unistd.h.
* include/c_compatibility/wchar.h: Guard extra wchar_t functionality.
* include/c_std/std_cwchar.h: Same.
* include/c_std/std_cwctype.h: Same.
2003-09-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/11065
* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is): Fix.
* config/locale/generic/ctype_members.cc: Same.
* testsuite/22_locale/ctype/is/char/1.cc: Initialize mask.
* testsuite/22_locale/ctype/is/wchar_t/1.cc: Same.
* config/os/generic/ctype_inline.h: Update.
2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
* src/Makefile.am (version_dep): New variable.
(libstdc___la_DEPENDENCIES): Use it to add dependency on
libstdc++-symbol.ver only when using symbol versioning.
* src/Makefile.in: Regenerate.
2003-09-23 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Tweak to avoid warnings.
* testsuite/testsuite_hooks.h: Same.
* testsuite/*/*.cc: Same.
2003-09-22 Petur Runolfsson <peturr02@ru.is>
* include/bits/istream.tcc (basic_istream::read,
basic_istream::readsome, basic_istream::putback,
basic_istream::unget, operator>>(basic_istream, CharT)):
Avoid redundant setstate(failbit) calls when sentry::operator bool()
returns false.
2003-09-22 Carlo Wood <carlo@alinoe.com>
PR libstdc++/12365
* include/bits/demangle.h (qualifier(int, cv_qualifier_nt,
char const*, int, int)): Remove unused identifier
cv_qualifier for overloaded constructor.
2003-09-18 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/11504
* acinclude.m4 (GLIBCXX_EXPORT_FLAGS): Add -Wcast-qual to
WARN_FLAGS, remove -Wno-format.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2003-09-18 Petur Runolfsson <peturr02@ru.is>
* config/io/basic_file_stdio.cc (sys_getc, sys_ungetc): Delete.
* config/io/basic_file_stdio.h: Same.
* include/std/std_fstream.h (__ctype_type): Delete.
* include/std/std_streambuf.h (__ctype_type, __state_type): Delete.
2003-09-17 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12239
* configure.host (abi_baseline_pair): Error out on solaris2
configurations without a minor version number.
2003-09-13 Phil Edwards <phil@codesourcery.com>
* docs/doxygen/run_doxygen: Clear GENERATE_TAGFILE entirely
if man pages are on.
* docs/doxygen/user.cfg.in: And here.
2003-09-10 Daniel Jacobowitz <drow@mvista.com>
Andreas Jaeger <aj@suse.de>
PR libstdc++/12189
* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't build
abi_check if cross compiling.
* aclocal.m4: Regenerated.
* configure: Regenerated.
2003-09-10 Jeffrey D. Oldham <oldham@codesourcery.com>
* libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
NULL, return NULL. This reflects a C++ ABI change 2003 Sep 05.
(__cxa_vec_new3): Likewise.
2003-09-10 Petur Runolfsson <peturr02@ru.is>
* include/bits/fstream.tcc (basic_filebuf::seekoff):
Use codecvt::length to handle variable-width stateless encodings
correctly.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
2003-09-10 Alan Modra <amodra@bigpond.net.au>
* config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
rather than or'ing.
2003-09-09 Alan Modra <amodra@bigpond.net.au>
* configure: Regenerate.
2003-09-09 David Edelsohn <edelsohn@gnu.org>
* src/ios.cc (ios_base::Init::Init): Remove unnecessary
qualifier from _S_synced_with_stdio.
2003-09-09 Bernardo Innocenti <bernie@develer.com>
* include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
2003-09-04 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9028
* include/bits/fstream.tcc
(basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
(basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
_M_ext_buf_size, _M_ext_next and _M_ext_end.
(basic_filebuf::underflow): Handle variable-width stateless
encodings (codecvt::encoding() == 0), including UTF-8.
* include/std/std_fstream.h (basic_filebuf):
Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
* testsuite/27_io/objects/wchar_t/12.cc: New test.
* testsuite/27_io/objects/wchar_t/13.cc: New test.
2003-09-04 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/faq/index.html: Note that a namespace alias can't be
used when specialising templates in extension namespace.
* docs/html/faq/index.txt: Regenerate.
2003-09-03 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/12048
* include/ext/stdio_sync_filebuf.h
(stdio_sync_filebuf::_M_unget_buf): Declare it.
(stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
(stdio_sync_filebuf::uflow): Store the returned character in
_M_unget_buf.
(stdio_sync_filebuf::pbackfail): If argument is eof(), pass
_M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
(stdio_sync_filebuf<char>::xsgetn): Store last read character in
_M_unget_buf, if any, else eof().
(stdio_sync_filebuf<wchar_t>::xsgetn: Store last read character in
_M_unget_buf, if any, else eof().
* testsuite/27_io/objects/char/12048.cc: Rename to...
* testsuite/27_io/objects/char/12048-1.cc: ...this.
* testsuite/27_io/objects/char/12048-2.cc: New test.
* testsuite/27_io/objects/char/12048-3.cc: New test.
* testsuite/27_io/objects/char/12048-4.cc: New test.
* testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
* testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
* testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
* testsuite/ext/stdio_sync_filebuf_char.cc
(test02, test03, test04, test05): New tests.
* testsuite/ext/stdio_sync_filebuf_wchar_t.cc
(test02, test03, test04, test05): New tests.
2003-09-03 Petur Runolfsson <peturr02@ru.is>
* docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
stringbuf or strstreambuf. Fix typos.
2003-09-02 Phil Edwards <phil@codesourcery.com>
* acinclude.m4 (GLIBCXX_ENABLE_HOSTED): #define _GLIBCXX_HOSTED
appropriately.
* config.h.in: Add _GLIBCXX_HOSTED.
* libsupc++/eh_term_handler.cc: Test it here; initialize
__terminate_handler to std::abort if freestanding.
* aclocal.m4, configure: Regenerated.
* docs/html/configopts.html: Document --disable-hosted-libstdcxx.
2003-08-29 Nathan Myers <ncm@cantrip.org>
PR libstdc++/11990
* include/bits/locale_facets.tcc (__pad): delete dead code.
2003-08-28 Alan Modra <amodra@bigpond.net.au>
* configure.ac: Test $with_cross_host against $build_alias, not $build.
* configure: Regenerate.
2003-08-27 Petur Runolfsson <peturr02@ru.is>
* testsuite/27_io/objects/wchar_t/10.cc: Move wcout stuff...
* testsuite/27_io/objects/wchar_t/11.cc: ...here. New file.
2003-08-27 Phil Edwards <pme@gcc.gnu.org>
* Makefile.am: Remove trailing whitespace. Remove needless
"foo = @foo@" assignments. Replace direct uses of @foo@ with $(foo).
* include/Makefile.am: Likewise.
* libmath/Makefile.am: Likewise.
* libsupc++/Makefile.am: Likewise.
* po/Makefile.am: Likewise.
* src/Makefile.am: Likewise.
* testsuite/Makefile.am: Likewise.
* Makefile.in, include/Makefile.in, libmath/Makefile.in,
libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
testsuite/Makefile.in: Regenerated.
2003-08-27 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Change quoting of
includedir.
* aclocal.m4, configure: Regenerate.
2003-08-27 Daniel Jacobowitz <drow@mvista.com>
* acinclude.m4: Include no-executables.m4.
* configure.ac: Uncomment GCC_NO_EXECUTABLES.
* aclocal.m4: Regenerated.
* configure: Regenerated.
2003-08-27 Daniel Jacobowitz <drow@mvista.com>
* acinclude.m4: Don't call AC_ISC_POSIX.
* aclocal.m4: Regenerated.
* configure: Regenerated.
2003-08-27 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_CONDITIONAL): New macro. Wrap
AM_CONDITIONAL. Replace all calls to AM_CONDITIONAL with this one.
(GLIBCXX_ENABLE_HOSTED): New macro, sets new variable is_hosted,
used elsewhere in this file.
(GLIBCXX_EVALUATE_CONDITIONALS): New macro...
* configure.ac: ...called here to expand all conditionals.
* Makefile.am: Conditionalize SUBDIRS on GLIBCXX_HOSTED.
* include/Makefile.am: Remove redundant gxx_include_dir assignment.
(install-freestanding-headers): New target, a subset of
install-headers. Conditionalize install-data-local on GLIBCXX_HOSTED.
* aclocal.m4, configure, Makefile.in, include/Makefile.in,
libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
src/Makefile.in, testsuite/Makefile.in: Regenerated.
2003-08-26 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local
pathnames from generated tag file.
2003-08-26 Phil Edwards <pme@gcc.gnu.org>
* Makefile.am: Add comment.
* acinclude.m4 (GLIBCXX_CONFIGURE): Set new glibcxx_SUBDIRS and
SUBDIRS variables.
* configure.ac: Use them both here, instead of hardcoded lists.
* fragment.am: Add STAMP varaible.
* include/Makefile.am: Cosmetic whitespace cleanup. Use $(LN_S)
instead of @LN_S@.
(stamp-*): Move file creation rule outside of 'if' branches to
ensure the stamp-* files are actually updated. Use $(STAMP).
* src/Makefile.am: Remove now-nonexistant variable.
* libsupc++/Makefile.am: Likewise. Snap the assignment chain
for -prefer-pic.
* po/Makefile.am: Include same fragment as all the others.
* aclocal.m4, configure, Makefile.in, include/Makefile.in,
libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in: Regenerated.
2003-08-26 Loren J. Rittle <ljrittle@acm.org>
* testsuite/data/cin_unget-1.txt: New.
* testsuite/27_io/objects/char/12048.cc: New.
2003-08-25 Zack Weinberg <zack@codesourcery.com>
* config/os/hpux/os_defines.h: Unconditionally define
_GLIBCXX_GTHREAD_USE_WEAK to 0.
2003-08-19 Geoffrey Keating <geoffk@apple.com>
* crossconfig.m4 (*-darwin*): Add a large and boring stanza for
crosses to Darwin targets.
* configure: Regenerate.
2003-08-19 Petur Runolfsson <peturr02@ru.is>
* include/ext/ropeimpl.h: #include <ostream> instead of <iostream>
2003-08-17 Phil Edwards <pme@gcc.gnu.org>
* configure.ac: GCC_NO_EXECUTABLES was supposed to be commented
in the patch from 3 minutes ago. Boy, is my face red.
* configure: At least I remembered to regenerate this.
2003-08-17 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Remove LIBMATH_INCLUDES
and LIBSUPCXX_INCLUDES. Re-purpose TOPLEVEL_INCLUDES to refer to
things from the top level.
* configure.ac (GLIBCXX_IS_NATIVE): Determine earlier and re-order.
Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
(currently unused). Strip the fake-VPATH shell fragment from
automake-generated rules, if present.
* linkage.m4: Add comment.
* fragment.am: New file, containing factored-out common settings.
(AM_CPPFLAGS): Absorb the deprecated INCLUDES variable contents.
* Makefile.am: Include fragment.am. Remove common variables.
* include/Makefile.am: Likewise.
* libmath/Makefile.am: Likewise.
* libsupc++/Makefile.am: Likewise.
* po/Makefile.am: Likewise. Print rules during check.
* src/Makefile.am: Likewise.
* testsuite/Makefile.am: Likewise.
* aclocal.m4, configure, Makefile.in, include/Makefile.in,
libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
src/Makefile.in, testsuite/Makefile.in: Regenerate.
2003-08-11 John Levon <levon@movementarian.org>
* docs/html/ext/howto/guide.html (GLIBCXX_FORCE_NEW): Update
remaining places for the name change from GLIBCPP_FORCE_NEW
to GLIBCXX_FORCE_NEW
2003-08-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_ios.h: Remove *_iter typedefs, change num*
typedefs to num_*.
* include/bits/basic_ios.tcc: Same.
* include/bits/istream.tcc: Same.
* include/bits/locale_facets.h: Same.
* include/bits/ostream.tcc: Same.
* include/std/std_istream.h: Same.
* include/std/std_ostream.h: Same.
* testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
* include/ext/rope: Remove build warning.
2003-08-11 Andreas Jaeger <aj@suse.de>
* include/Makefile.am (stamp-c_base): Add dependency on stamp-bits
to make SMP-safe.
* include/Makefile.in: Regenerated.
2003-08-11 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_CONFIGURE): Unprecious CC and CFLAGS
when calling AC_PROG_CC.
* aclocal.m4, configure: Regenerate.
2003-08-11 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4: Properly quote variable which will be expanded
inside makefiles. Use CXX instead of CC to extract compiler info.
* configure.ac (AC_INIT): Use the new 4-arg form to finally get the
correct form in PACKAGE.
* aclocal.m4, configure: Regenerate.
2003-08-08 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/Makefile.am (check-abi): Change libstdc++-v3 to libstdc++.
(check-abi-verbose): Same.
* testsuite/testsuite_performance.h (report_performance): Same.
2003-08-08 Loren J. Rittle <ljrittle@acm.org>
* testsuite/testsuite_performance.h (__FreeBSD__): Add fake mallinfo.
2003-08-07 Doug Gregor <dgregor@apple.com>
* include/bits/char_traits.h (char_traits::not_eof): Match operand
types in ? :.
2003-08-07 Bernardo Innocenti <bernie@develer.com>
PR libstdc++/11784
* libstdc++-v3/config/cpu/m68k/atomicity.h (__exchange_and_add):
Replace variants with new BSET-based version.
2003-08-07 Carlo Wood <carlo@alinoe.com>
* include/bits/demangle.h: Do not use cctype functions that depend
on locale.
2003-08-05 Phil Edwards <pme@gcc.gnu.org>
* configure.in: Rename...
* configure.ac: ...to this.
* docs/html/17_intro/porting.texi: Update name.
* docs/html/17_intro/porting.html: Regenerate.
* config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
testsuite/Makefile.in: Regenerate (picks up new dependancy).
2003-08-05 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Put down the crack
pipe, open the window to let out the fumes, redo the option-handling
logic to properly execute the detection test.
* aclocal.m4, configure: Regenerate.
2003-08-04 Phil Edwards <pme@gcc.gnu.org>
Convert to new autotools.
* acconfig.h: Update with correct names.
* configure.host (ATOMICITYH): Rename to atomicity_include_dir.
(qnx6.[12]*): 'q' comes before 's', not after 'w'.
* configure.in: Update. Split hardcoded cross-configury settings
out to...
* crossconfig.m4: ...here. New file. Contents untouched.
* acinclude.m4: Reorganize and rewrite as needed. Split large
chunks out to...
* linkage.m4: ...here. New file. Math and stdlib linkage tests.
Contents untouched.
* scripts/testsuite_flags.in: Update.
* Makefile.am: Remove unneeded AUTOMAKE_OPTIONS settings and other
variables (already generated by automake).
* include/Makefile.am: Ditto.
* libmath/Makefile.am: Ditto.
* libsupc++/Makefile.am: Ditto.
* po/Makefile.am: Ditto.
* src/Makefile.am: Ditto.
* aclocal.m4: Regenerate using new versions.
* config.h.in: Ditto.
* configure: Ditto.
* Makefile.in: Ditto.
* include/Makefile.in: Ditto.
* libmath/Makefile.in: Ditto.
* libsupc++/Makefile.in: Ditto.
* po/Makefile.in: Ditto.
* src/Makefile.in: Ditto.
* testsuite/Makefile.in: Ditto.
2003-08-04 Phil Edwards <pme@gcc.gnu.org>
* po/libstdc++.pot: Re-extract/regenerate.
2003-08-04 Phil Edwards <pme@gcc.gnu.org>
* testsuite/Makefile.am (DEJATOOL,EXPECT,RUNTEST,RUNTESTFLAGS):
Remove unneeded variable assignments. Leave them for automake.
* testsuite/lib/libstdc++-v3.exp: Rename...
* testsuite/lib/libstdc++.exp: ...to this. Adjust function names
accordingly.
* testsuite/libstdc++-v3.dg/dg.exp: Rename...
* testsuite/libstdc++-dg/normal.exp: ...to this. Adjust function
names accordingly.
2003-08-04 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/guide.html: run_doxygen uses bash.
* docs/doxygen/mainpage.html: We'll be shipping tag files.
* docs/doxygen/run_doxygen: Tweaks and improvements.
* docs/doxygen/user.cfg.in: Set GENERATE_TAGFILE.
* docs/html/install.html: Update autoconf/automake requirements.
* docs/html/test.html: Add section describing DejaGNU support.
* docs/html/17_intro/confdeps.dot: New file, generates...
* docs/html/17_intro/confdeps.png: ...this new file.
* docs/html/Makefile: Generated here.
* docs/html/17_intro/configury.html: New file.
2003-07-31 Phil Edwards <pme@gcc.gnu.org>
* testsuite/lib/libstdc++-v3-dg.exp: Rename...
* testsuite/lib/libstdc++-v3.exp: ...to this.
* testsuite/libstdc++-v3.dg/dg.exp: No special case needed now.
2003-07-31 Doug Gregor <dgregor@apple.com>
Add user specialization tests.
* testsuite/23_containers/deque/1.cc: New.
* testsuite/23_containers/list/1.cc: New.
* testsuite/23_containers/map/1.cc: New.
* testsuite/23_containers/multimap/1.cc: New.
* testsuite/23_containers/multiset/1.cc: New.
* testsuite/23_containers/set/1.cc: New.
* testsuite/23_containers/vector/1.cc: New.
2003-07-31 Benjamin Kosnik <bkoz@redhat.com>
Reshuffle 23_containers testsuite.
* 23_containers/adaptors.cc, bitset_ctor.cc,bitset_members.cc,
bitset_shift.cc, deque_ctor.cc, deque_operators.cc,
list_capacity.cc, list_ctor.cc, list_modifiers.cc, list_operators.cc,
map_insert.cc, map_operators.cc, map_operators_neg.cc, multiset.cc,
set_operators_neg.cc, vector_bool.cc, vector_capacity.cc,
vector_ctor.cc, vector_element_access.cc, vector_modifiers.cc,
vector_resize.cc: Split into...
* 23_containers/bitset/cons/1.cc: New.
* 23_containers/bitset/cons/6282.cc: New.
* 23_containers/bitset/count/6124.cc: New.
* 23_containers/bitset/operations/1.cc: New.
* 23_containers/bitset/operations/2.cc: New.
* 23_containers/bitset/test/1.cc: New.
* 23_containers/bitset/to_ulong/1.cc: New.
* 23_containers/deque/cons/1.cc: New.
* 23_containers/deque/cons/2.cc: New.
* 23_containers/deque/operators/1.cc: New.
* 23_containers/list/capacity/1.cc: New.
* 23_containers/list/cons/1.cc: New.
* 23_containers/list/cons/2.cc: New.
* 23_containers/list/cons/3.cc: New.
* 23_containers/list/cons/4.cc: New.
* 23_containers/list/cons/5.cc: New.
* 23_containers/list/cons/6.cc: New.
* 23_containers/list/cons/7.cc: New.
* 23_containers/list/cons/8.cc: New.
* 23_containers/list/cons/9.cc: New.
* 23_containers/list/modifiers/1.cc: New.
* 23_containers/list/modifiers/2.cc: New.
* 23_containers/list/modifiers/3.cc: New.
* 23_containers/list/operators/1.cc: New.
* 23_containers/list/operators/2.cc: New.
* 23_containers/list/operators/3.cc: New.
* 23_containers/list/operators/4.cc: New.
* 23_containers/map/insert/1.cc: New.
* 23_containers/map/operators/1.cc: New.
* 23_containers/map/operators/1_neg.cc: New.
* 23_containers/multiset/insert/1.cc: New.
* 23_containers/priority_queue/members/7161.cc: New.
* 23_containers/queue/members/7157.cc: New.
* 23_containers/set/operators/1_neg.cc: New.
* 23_containers/stack/members/7158.cc: New.
* 23_containers/vector/bool/1.cc: New.
* 23_containers/vector/bool/6886.cc: New.
* 23_containers/vector/capacity/1.cc: New.
* 23_containers/vector/capacity/2.cc: New.
* 23_containers/vector/capacity/8230.cc: New.
* 23_containers/vector/cons/1.cc: New.
* 23_containers/vector/cons/2.cc: New.
* 23_containers/vector/cons/3.cc: New.
* 23_containers/vector/cons/4.cc: New.
* 23_containers/vector/cons/6513.cc: New.
* 23_containers/vector/element_access/1.cc: New.
* 23_containers/vector/modifiers/1.cc: New.
* 23_containers/vector/modifiers/2.cc: New.
* 23_containers/vector/resize/1.cc: New.
2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* testsuite/thread/pthread1.cc: Add alpha*-*-osf* to dg-do run,
dg-options.
* testsuite/thread/pthread2.cc: Likewise.
* testsuite/thread/pthread3.cc: Likewise.
* testsuite/thread/pthread4.cc: Likewise.
* testsuite/thread/pthread5.cc: Likewise.
* testsuite/thread/pthread6.cc: Likewise.
* testsuite/thread/pthread7-rope.cc: Likewise.
2003-07-30 Phil Edwards <pme@gcc.gnu.org>
* include/bits/c++config: Partial reversion (comment placement) of
previous patch.
2003-07-30 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config (_GLIBCXX_FULLY_COMPLIANT_HEADERS): Remove.
(_GLIBCXX_NO_TEMPLATE_EXPORT): To _GLIBCXX_EXPORT_TEMPLATE.
(_GLIBCXX_AT_AT): Remove.
(__USE_MALLOC): Remove.
* include/std/std_fstream.h: Modify.
* include/bits/basic_ios.h: Same.
* include/bits/valarray_array.h: Same.
* include/c_std/std_cmath.h: Same.
* include/c_std/cmath.tcc: Same.
* include/std/std_vector.h: Same.
* include/std/std_string.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_queue.h: Same.
* include/std/std_list.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_streambuf.h: Same.
* include/std/std_sstream.h: Same.
* include/std/std_ostream.h: Same.
* include/std/std_istream.h: Same.
* include/bits/valarray_array.tcc: Same, format.
* include/c/std_cctype.h: Fix include guards.
* include/c/std_cerrno.h: Same.
* include/c/std_cfloat.h: Same.
* include/c/std_climits.h: Same.
* include/c/std_clocale.h: Same.
* include/c/std_cmath.h: Same.
* include/c/std_csetjmp.h: Same.
* include/c/std_csignal.h: Same.
* include/c/std_cstdarg.h: Same.
* include/c/std_cstddef.h: Same.
* include/c/std_cstdio.h: Same.
* include/c/std_cstdlib.h: Same.
* include/c/std_cstring.h: Same.
* include/c/std_ctime.h: Same.
* include/c/std_cwchar.h: Same.
* include/c/std_cwctype.h: Same.
* include/c_std/cmath.tcc: Same.
* include/c_std/std_cmath.h: Same.
2003-07-30 Gawain Bolton <gp.bolton@computer.org>
PR libstdc++/11504.
* include/bits/stl_tree.h: Replace C-style casts with C++-style
casts. Changes to avoid casting away constness. Eliminate
_Rb_tree_base_iterator class. Change _Rb_tree_iterator to use
initialization lists. Move out implementation of __black_count()
to...
* src/stl_tree.cc: ...here and rename _Rb_tree_black_count().
Rename_Rb_tree_base_iterator::_M_increment() to
_Rb_tree_increment and _Rb_tree_base_iterator::_M_decrement() to
_Rb_tree_decrement.
* config/linker-map.gnu: Add and change symbols here.
2003-07-30 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/22_locale/howto.html: Use locale::classic() instead
of locale("C").
2003-07-28 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_hooks.h: Remove list include.
(func_callback): Define as unique type, not std::list.
Change DEBUG_ASSERT to _GLIBCXX_ASSERT.
* testsuite/libstdc++-v3.dg/dg.exp: Same.
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Same.
* testsuite/23_containers/bitset_ctor.cc:
* testsuite/17_intro/header_ciso646.cc: Remove DEBUG_ASSERT.
* testsuite/18_support/numeric_limits.cc: Same.
* testsuite/21_strings/basic_string/append/char/1.cc: Same.
* testsuite/21_strings/basic_string/append/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/compare/char/1.cc: Same.
* testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/element_access/char/1.cc: Same.
* testsuite/21_strings/basic_string/element_access/char/2.cc: Same.
* testsuite/21_strings/basic_string/element_access/char/3.cc: Same.
* testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/element_access/wchar_t/2.cc: Same.
* testsuite/21_strings/basic_string/element_access/wchar_t/3.cc: Same.
* testsuite/21_strings/basic_string/find/char/1.cc: Same.
* testsuite/21_strings/basic_string/find/char/2.cc: Same.
* testsuite/21_strings/basic_string/find/char/3.cc: Same.
* testsuite/21_strings/basic_string/find/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/find/wchar_t/2.cc: Same.
* testsuite/21_strings/basic_string/find/wchar_t/3.cc: Same.
* testsuite/21_strings/basic_string/insert/char/1.cc: Same.
* testsuite/21_strings/basic_string/insert/char/2.cc: Same.
* testsuite/21_strings/basic_string/insert/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/insert/wchar_t/2.cc: Same.
* testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
* testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
* testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
* testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
* testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
* testsuite/21_strings/basic_string/operators/char/1.cc: Same.
* testsuite/21_strings/basic_string/operators/char/2.cc: Same.
* testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Same.
* testsuite/21_strings/basic_string/replace/char/1.cc: Same.
* testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/rfind/char/1.cc: Same.
* testsuite/21_strings/basic_string/rfind/char/2.cc: Same.
* testsuite/21_strings/basic_string/rfind/char/3.cc: Same.
* testsuite/21_strings/basic_string/rfind/wchar_t/1.cc: Same.
* testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: Same.
* testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: Same.
* testsuite/21_strings/basic_string/substr/char/1.cc: Same.
* testsuite/21_strings/basic_string/substr/wchar_t/1.cc: Same.
* testsuite/23_containers/bitset_ctor.cc: Same.
* testsuite/23_containers/bitset_shift.cc: Same.
* testsuite/23_containers/vector_ctor.cc: Same.
* testsuite/23_containers/vector_element_access.cc: Same.
* testsuite/24_iterators/istreambuf_iterator.cc: Same.
* testsuite/24_iterators/iterator.cc: Same.
* testsuite/24_iterators/ostreambuf_iterator.cc: Same.
* testsuite/25_algorithms/lower_bound.cc: Same.
* testsuite/26_numerics/complex_inserters_extractors.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
Same.
2003-07-28 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/user.cfg.in, docs/html/abi.txt, docs/html/debug.html,
docs/html/test.html, docs/html/17_intro/headers_cc.txt,
docs/html/17_intro/howto.html, docs/html/ext/howto.html: Change
GLIBCPP to GLIBCXX (and explain as needed).
2003-07-28 Phil Edwards <pme@gcc.gnu.org>
* README: Update.
2003-07-28 Phil Edwards <pme@gcc.gnu.org>
* testsuite/22_locale/messages/members/char/1.cc,
testsuite/22_locale/messages/members/char/2.cc,
testsuite/22_locale/messages/members/char/3.cc,
testsuite/22_locale/messages_byname/1.cc: Update comment regarding
the origin of LOCALEDIR.
* testsuite/lib/libstdc++-v3.exp: New file.
2003-07-25 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/char_traits.h: Update copyright, tweak.
* testsuite/ext/pod_char_traits.cc: Explicitly qualify namespace
std types.
2003-07-24 Matt Austern <austern@apple.com>
* /include/bits/char_traits.h (class char_traits): Put all the
real work into the new class template __gnu_cxx::char_traits.
Gave generic definitions for member functions. Types are taken
from the new class template __gnu_cxx::_Char_types.
* testsuite/21_strings/char_traits/requirements/short/1.cc: New
file. Test of std::char_traits<short>, which serves as a test of
the char_traits primary template.
2003-07-24 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/*: Change __gnu_cxx_test to __gnu_test.
2003-07-24 Nathan Myers <ncm-nospam@cantrip.org>
* testsuite/23_containers/map_operators.cc: Conform to
container requirement as value must be Assignable.
2003-07-23 Alexandre Oliva <aoliva@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_PCH): Rework test such that it
tests not only generation of pch files, but also their use.
* aclocal.m4, configure: Rebuilt.
2003-07-23 Steve Ellcey <sje@cup.hp.com>
* config/cpu/hppa/atomicity.h: Change
_GLIBCXX_INST_GLIBCXX_ATOMICITY_LOCK to _GLIBCXX_INST_ATOMICITY_LOCK
to match misc-inst.cc
2003-07-23 Steve Ellcey <sje@cup.hp.com>
* include/c_std/cmath.tcc: Use _GLIBCXX_ prefix on file guard.
* include/c_std/std_cctype.h: Ditto.
* include/c_std/std_cerrno.h: Ditto.
* include/c_std/std_cfloat.h: Ditto.
* include/c_std/std_climits.h: Ditto.
* include/c_std/std_clocale.h: Ditto.
* include/c_std/std_cmath.h: Ditto.
* include/c_std/std_csetjmp.h: Ditto.
* include/c_std/std_csignal.h: Ditto.
* include/c_std/std_cstdarg.h: Ditto.
* include/c_std/std_cstddef.h: Ditto.
* include/c_std/std_cstdio.h: Ditto.
* include/c_std/std_cstdlib.h: Ditto.
* include/c_std/std_cstring.h: Ditto.
* include/c_std/std_ctime.h: Ditto.
* include/c_std/std_cwchar.h: Ditto.
* include/c_std/std_cwctype.h: Ditto.
* include/std/std_algorithm.h: Ditto.
* include/std/std_bitset.h: Ditto.
* include/std/std_complex.h: Ditto.
* include/std/std_deque.h: Ditto.
* include/std/std_fstream.h: Ditto.
* include/std/std_functional.h: Ditto.
* include/std/std_iomanip.h: Ditto.
* include/std/std_ios.h: Ditto.
* include/std/std_iosfwd.h: Ditto.
* include/std/std_iostream.h: Ditto.
* include/std/std_istream.h: Ditto.
* include/std/std_iterator.h: Ditto.
* include/std/std_limits.h: Ditto.
* include/std/std_list.h: Ditto.
* include/std/std_locale.h: Ditto.
* include/std/std_map.h: Ditto.
* include/std/std_memory.h: Ditto.
* include/std/std_numeric.h: Ditto.
* include/std/std_ostream.h: Ditto.
* include/std/std_queue.h: Ditto.
* include/std/std_set.h: Ditto.
* include/std/std_sstream.h: Ditto.
* include/std/std_stack.h: Ditto.
* include/std/std_stdexcept.h: Ditto.
* include/std/std_streambuf.h: Ditto.
* include/std/std_string.h: Ditto.
* include/std/std_utility.h: Ditto.
* include/std/std_valarray.h: Ditto.
* include/std/std_vector.h: Ditto.
2003-07-22 Doug Gregor <dgregor@apple.com>
* include/bits/basic_string.h (basic_string::insert): Deprecate
GNU extension.
2003-07-21 Benjamin Kosnik <bkoz@redhat.com>
* scripts/testsuite_flags.in (--build-includes): Remove extraneous
paths for libio.
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc
(test03): Include typeinfo for bad_cast.
* testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
* testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
2003-07-21 Doug Gregor <dgregor@apple.com>
* include/bits/boost_concept_check.h:
(_EqualityComparableConcept::__constraints): Remove != from the
list of constraints; it is not listed in Table 28 of the C++98
standard.
2003-07-18 Andreas Jaeger <aj@suse.de>
* config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
* config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
* config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
2003-07-17 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Add __moneypunct_cache, __timepunct_cache.
* config/locale/generic/messages_members.h: Tweaks.
* config/locale/generic/monetary_members.cc
(moneypunct::_M_initialize_moneypunct): Use cache.
(moneypunct::~moneypunct): Delete cache.
* config/locale/generic/time_members.cc:
(__timepunct::_M_initialize_timepunct): Use cache.
* config/locale/generic/time_members.h:
(__timepunct::~__timepunct): Delete cache.
(__timepunct::__timepunct): Set cache.
* config/locale/gnu/messages_members.h: Tweaks.
* config/locale/gnu/monetary_members.cc:
(moneypunct::_M_initialize_moneypunct): Use cache.
(moneypunct::~moneypunct): Delete cache.
* config/locale/gnu/time_members.cc:
(__timepunct::_M_initialize_timepunct): Use cache.
* config/locale/gnu/time_members.h:
(__timepunct::~__timepunct): Delete cache.
(__timepunct::__timepunct): Set cache.
* include/bits/locale_facets.h (__timepunct_cache): New.
(__moneypunct_cache): New.
* include/bits/locale_facets.tcc: Tweak.
* src/locale.cc (__timepunct::_S_timezones): Adjust for cache.
* src/locale-inst.cc: Instantiate caches.
* src/globals.cc: Add "C" caches.
* src/localename.cc: Use external "C" caches.
2003-07-17 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/guide.html: Fix typo.
2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pod_char_traits.h: Add state template argument.
2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
(num_get::_M_convert_int): To _M_insert_int.
(num_get::_M_convert_float): To _M_insert_float.
* include/bits/locale_facets.tcc (num_get::_M_extract_float):
Use caches for ctype, num_get.
(num_get::_M_extract_int): Same.
(num_get::get(bool)): Same.
(__verify_grouping): Use size_t.
* src/locale-inst.cc: Update.
* src/locale.cc: Adjust _S_atoms_in.
2003-07-16 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/mainpage.html: Move building/writing instructions...
* docs/doxygen/guide.html: ...to here. New file.
2003-07-16 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/ext/howto.html: Update URL for SGI STL docs.
* docs/html/faq/index.html: Same.
* docs/html/faq/index.txt: Regenerate.
2003-07-16 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11528
* include/bits/locale_facets.tcc (money_get::do_get):
Strip only _leading_ zeros.
* testsuite/22_locale/money_get/get/char/11528.cc: Add.
* testsuite/22_locale/money_get/get/wchar_t/11528.cc: Add.
2003-07-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
* include/ext/hash_map (class hash_multimap): Remove extra
semicolons from __glibcxx_class_requires3 entries.
* include/ext/hash_set (class hash_set): Ditto.
(class hash_multiset): Ditto.
2003-07-15 Petur Runolfsson <peturr02@ru.is>
* include/bits/char_traits.h (char_traits<wchar_t>::move):
Change last parameter from int_type to size_t.
2003-07-15 Jerry Quinn <jlquinn@optonline.net>
* include/bits/stl_algo.h (includes, set_union, set_intersection,
set_difference, set_symmetric_difference, max_element, min_element,
next_permutation, prev_permutation, find_first_of, find_end):
Document.
* include/bits/stl_algobase.h (copy,copy_backward): Clarify overlap
restrictions in docs.
* include/bits/stl_heap.h (push_heap, pop_heap, make_heap, sort_heap):
Document.
* docs/doxygen/doxygroups.cc (setoperations): New group.
2003-07-15 Jerry Quinn <jlquinn@optonline.net>
* include/bits/basic_string.h: Document public functions.
* docs/doxygen/TODO: Update c21 todo.
2003-07-15 Jerry Quinn <jlquinn@optonline.net>
* include/bits/stl_list.h: Document more functions.
* docs/doxygen/TODO: Update c23 todo.
2003-07-14 Paolo Carlini <pcarlini@unitus.it>
* config/locale/gnu/c_locale.h (__convert_from_v): One more
qualification.
2003-07-14 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_tempbuf.h: Qualify free with std::.
* src/locale.cc: Include <cstdlib>, qualify getenv.
2003-07-14 Paolo Carlini <pcarlini@unitus.it>
* config/locale/gnu/c_locale.h (__convert_from_v): Include
<cstdio>. Qualify names.
* config/locale/generic/c_locale.h (__convert_from_v): Ditto.
2003-07-14 Paolo Carlini <pcarlini@unitus.it>
Nathan C. Myers <ncm-nospam@cantrip.org>
PR libstdc++/11378
* include/std/std_fstream.h (xsputn): Declare only.
* include/bits/fstream.tcc (xsputn): Define, optimize for the
always_noconv() case: when __n is sufficiently large flush
the buffer and issue a direct write, if possible combining the
two with writev in __basic_file<>::xsputn_2.
* config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
New, declare.
* config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
Define.
* acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
the availability of writev in <sys/uio.h>.
* configure.in: Call here.
* acconfig.h: Add undef for the corresponding symbol.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.h.in: Regenerate.
* testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
* include/std/std_fstream.h (sync): Constify a variable.
2003-07-14 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2003-07-14 Gabriel Dos Reis <gcc@integrable-solutions.net>
* config/locale/gnu/c_locale.h (__convert_from_v): Include
<cstring> and <cstdlib>. Qualify names.
2003-07-13 Mark Mitchell <mark@codesourcery.com>
* config/locale/generic/c_locale.h: Include <cstdlib> and
<cstring>.
* include/bits/boost_concept_check.h: Add this-> to unqualified
method calls.
* include/bits/deque.tcc: Likewise.
* include/bits/locale_facets.h : Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/stl_algo.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/vector.tcc: Likewise.
* include/ext/rope: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/stdio_filebuf.h: Likewise.
2003-07-11 Jerry Quinn <jlquinn@optonline.net>
* include/bits/basic_ios.h (copyfmt): Document.
* include/bits/ios_base.h (event, event_callback, register_callback,
xalloc, iword, pword): Document.
(imbue, ~ios_base): Update docs on callbacks.
2003-07-11 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCC_ENABLE_SYMVERS): Tweak comments. Add
warning messages if the environment cannot support symbol versioning.
(port_specific_symbol_file): It's plural, add an 's' on the end.
* configure.host: Likewise.
* src/Makefile.am: Likewise.
* config/linker-map.gnu: Remove one semicolon, heh.
* scripts/extract_symvers: Don't assume useful 'export' syntax.
Set LANG as well as LC_ALL for possibly-broken sort(1)s.
* aclocal.m4, configure, src/Makefile.in: Regenerated.
2003-07-09 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Use function object for
__use_cache instead of template function. Partially specialize for
__numpunct<_CharT>.
* include/bits/locale_classes.h: Update friend declaration for
__use_cache.
(_M_install_cache): No throw exception specs.
* src/locale.cc: Remove __use_cache specializations.
* include/ext/pod_char_traits.h (length): Tweak.
* include/bits/locale_facets.h (__numpunct_cache): Remove
char_type typedef.
* testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
(pod_long): Remove.
* testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
* testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
* testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
* testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
* testsuite/22_locale/numpunct/members/pod/1.cc: New.
* testsuite/22_locale/numpunct/members/pod/2.cc: New.
2003-07-09 Jerry Quinn <jlquinn@optonline.net>
* src/ios.cc (_M_grow_words): Fix spelling.
2003-07-09 Gawain Bolton <gp.bolton@computer.org>
* include/bits/stl_tree.h: Move larger member functions in
_Rb_tree_base_iterator and _Rb_tree_node to...
* src/stl_tree.cc: Here.
* src/Makefile.in: Add stl_tree.cc.
* src/Makefile.in: Regenerated.
* config/linker-map.gnu: Add symbols here.
2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/ext/pod_char_traits.cc: New.
* include/ext/pod_char_traits.h: New.
* include/Makefile.am (ext_headers): Add pod_char_traits.h.
* include/Makefile.in: Regenerate.
* docs/html/21_strings/howto.html: Update.
2003-07-08 Gawain Bolton <gp.bolton@computer.org>
* testsuite/performance/list_create_fill_sort.cc: New.
2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
* config/locale/generic/numeric_members.cc: Correct type info.
* config/locale/gnu/numeric_members.cc: Same.
* include/bits/locale_facets.h: Same.
* include/bits/char_traits.h: Correct spacing.
* src/locale.cc: Wrap to 80 col.
2003-07-07 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_complex.h: Partially revert last
changes: cmath functions must not be qualified.
2003-07-06 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Do not test for binutils
2.11 with globbing backport fix.
* aclocal.m4, configure: Regenerated.
2003-07-06 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (xsputn): Don't call _M_destroy_pback:
if output is at all possible (!_M_reading), cannot be active.
* include/std/std_fstream.h: Tweak comments to doxygen style.
2003-07-06 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_classes.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/bits/locale_facets.tcc: Likewise.
* src/locale.cc: Likewise.
* src/localename.cc: Likewise.
2003-07-06 Phil Edwards <pme@gcc.gnu.org>
* include/bits/allocator_traits.h: Fix doxygen markup.
* include/ext/mt_allocator.h: Likewise.
2003-07-06 Phil Edwards <pme@gcc.gnu.org>
* testsuite/testsuite_hooks.h: Guard against a missing unlink().
2003-07-05 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Bump minimal version
requirement. Add port_specific_symbol_file variable.
* configure.host: Add docs for port_specific_symbol_file.
Clean up try_cpu block for x86.
* config/linker-map.gnu: No more "last symbol can't have a
semicolon" kaka. Add hook for port-specific symbols.
* src/Makefile.am: Remove trailing whitespace.
(libstdc++-symbol.ver): Detect the presence of port-specific
symbols, and add them accordingly.
* docs/html/17_intro/porting.texi: Bring up to date.
* src/Makefile.in, aclocal.m4, configure,
docs/html/17_intro/porting.html: Regenerated.
2003-07-05 Phil Edwards <pme@gcc.gnu.org>
* scripts/create_testsuite_files: New file.
* testsuite/Makefile.am (all-local, check-performance): Use it.
* testsuite/lib/libstdc++-v3-dg.exp (v3-computer-tests): Remove.
* testsuite/Makefile.in: Regenerated.
* testsuite/performance/filebuf_sputc.cc: Remove the temporary
files at the end.
* testsuite/performance/fstream_seek_write.cc: Likewise.
* testsuite/performance/ofstream_insert_float.cc: Likewise.
* testsuite/performance/ofstream_insert_int.cc: Likewise.
* testsuite/abi_check.cc (main): Nicer spacing in usage output.
2003-07-05 Gawain Bolton <gp.bolton@computer.org>
* include/bits/stl_list.h: Performance and memory usage
improvements. In particular, the behaviour of the constructor and
destructor as the list header node is no longer dynamically
allocated/de-allocated.
* include/bits/list.tcc: Likewise.
2003-07-05 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_complex.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/std/std_memory.h: Likewise.
* include/std/std_valarray.h: Likewise.
2003-07-05 Gawain Bolton <gp.bolton@computer.org>
* include/bits/stl_tree.h: _Rb_tree_rebalance(): Add local
variable for grandparent and use const
2003-07-05 David Billinghurst <David.Billinghurst@riotinto.com>
* testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
* testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
* testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
* testsuite/27_io/objects/char/7.cc: Ditto
* testsuite/27_io/objects/char/9661-1.cc: Ditto
2003-07-05 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_bitset.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/std/std_fstream.h: Change comment to doxygen style.
2003-07-05 Phil Edwards <pme@gcc.gnu.org>
* include/std/std_limits.h: More CPP->CXX changes.
* scripts/check_survey.in: Likewise.
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
Move from CPP to CXX.
* include/bits/c++config: Move to GLIBCXX from GLIBCPP.
* testsuite/Makefile.am: Same.
* testsuite/Makefile.in: Regenerate.
* po/Makefile.am: Same.
* po/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Same.
* libsupc++/Makefile.in: Regenerate.
* libmath/Makefile.am: Same.
* libmath/Makefile.in: Regenerate.
* include/Makefile.am: Same.
* include/Makefile.in: Regenerate.
* src/Makefile.am: Same.
* src/Makefile.in: Regenerate.
* acconfig.h: Same.
* configure.host: Same.
* configure.in: Same.
* configure: Regenerate.
* acinclude.m4: Same.
* aclocal.m4: Same.
* src: Change all files in this directory.
* testsuite: Same.
* include: Same, standardize include guards.
* config: Same.
* libsupc++: Same.
2003-07-04 Zack Weinberg <zack@codesourcery.com>
* testsuite/22_locale/collate/compare/wchar_t/2.cc
* testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
* testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
* testsuite/22_locale/collate/hash/wchar_t/2.cc
* testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
* testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
* testsuite/22_locale/collate/transform/wchar_t/2.cc
* testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
* testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
XFAIL on all targets.
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix missed variable.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2003-07-04 Jerry Quinn <jlquinn@optonline.net>
* include/bits/locale_facets.tcc (__int_to_char): Move common case
to the top.
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
Petur Runolfsson <peturr02@ru.is>
* config/io/basic_file_stdio.cc: Revert.
2003-07-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/deque.tcc: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/bits/gslice_array.h: Likewise.
* include/bits/indirect_array.h: Likewise.
* include/bits/list.tcc: Likewise.
* include/bits/mask_array.h: Likewise.
* include/bits/slice_array.h: Likewise.
2003-07-04 Gawain Bolton <gbolton@free.fr>
* include/bits/stl_tree.h: Performance and memory usage
improvements.
2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am: Replace PWD with PWD_COMMAND.
* Makefile.in: Regenerated.
* docs/html/Makefile: Likewise.
2003-07-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/valarray_array.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/bits/vector.tcc: Likewise.
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am: Update target_ to host_.
* include/Makefile.in: Regenerate.
* src/Makefile.am: Same.
* src/Makefile.in: Regenerate.
* config/os/gnu-linux/os_defines.h: Remove glibc-2.0 support.
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_ENABLE_DEBUG_FLAGS): To
--enable-libstdcxx-debug-flags.
(GLIBCPP_ENABLE_DEBUG_FLAGS): To --enable-libstdcxx-debug.
(GLIBCPP_ENABLE_PCH): To --enable-libstdcxx-pch.
* aclocal.m4: Regenerate.
* configure: Same.
* docs/html/configopts.html: Update.
2003-07-04 Paolo Carlini <pcarlini@unitus.it>
Revert the fix for libstdc++/11378.
2003-07-04 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11378
* include/std/std_fstream.h (xsputn): In the unbuffered case,
provided always_noconv(), issue directly _M_file.xsputn.
* testsuite/performance/filebuf_unbuf_sputn.cc: New.
2003-07-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_list.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/bits/stl_queue.h: Likewise.
* include/bits/stl_raw_storage_iter.h: Likewise.
* include/bits/stl_tempbuf.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/stl_uninitialized.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/ext/rope: Change includes order.
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
* configure.host (fpos_include_dir): Fix.
2003-07-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_heap.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/bits/stl_iterator_base_funcs.h: Likewise.
* include/bits/stl_algo.h: Qualify __iterator_category too.
* include/bits/stl_algobase.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_algo.h: Don't qualify the pair type.
2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (target_headers): Add fpos.h
(bits_headers): Remove.
* include/Makefile.in: Regenerate.
* configure.in: Add FPOS_INC_SRCDIR, substitute it.
* configure: Regenerate.
* configure.host: Add fpos_include_dir.
* config/os/gnu-linux/fpos.h: New.
* config/os/generic/fpos.h: Add.
* include/bits/fpos.h: Remove.
* config/io/c_io_stdio.h: Remove fpos_t typedef.
* include/bits/fstream.tcc: Tweaks.
* include/std/std_fstream.h: Same.
* testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
* testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
* testsuite/27_io/fpos/mbstate_t/2.cc: Same.
* testsuite/27_io/fpos/mbstate_t/3.cc: Same.
* testsuite/27_io/fpos/1.cc: New.
2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
Petur Runolfsson <peturr02@ru.is>
* include/std/std_streambuf.h: Remove _M_pos.
* config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
* config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
use fread/fwrite instead of read/write.
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
* testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
before reading again.
* testsuite/27_io/objects/char/6.cc: Tweak.
2003-07-03 David Edelsohn <edelsohn@gnu.org>
* testsuite/22_locale/num_put/put/char/7.cc: Guard with
_GLIBCPP_USE_WCHAR_T.
2003-07-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.tcc (_M_replace_aux): Constify
__n1 and __off1.
2003-07-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/stl_bvector.h: Fully qualify standard
functions with std::, thus avoiding Koenig lookup.
* include/bits/stl_construct.h: Likewise.
* include/bits/stl_deque.h: Likewise.
2003-07-02 Paolo Carlini <pcarlini@unitus.it>
* testsuite/22_locale/num_put/put/char/7.cc: Include
<testsuite_hooks.h>, tweak.
* testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
2003-07-01 Phil Edwards <pme@gcc.gnu.org>
* testsuite/Makefile.am (AM_MAKEFLAGS): Set to -j1 (affects
check* targets, but not libs/programs).
* testsuite/Makefile.in: Regenerate.
2003-07-01 Roger Sayle <roger@eyesopen.com>
* acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
(GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
* aclocal.m4: Regenerate.
* configure: Regenerate.
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
_InputIterator version based on _Is_integer.
* include/bits/basic_string.tcc (basic_string::replace):
Renamed replace(iterator, iterator, size_type, _CharT) to
_M_replace_aux.
* testsuite/21_strings/basic_string/assign/char/1.cc (test01):
Test basic_string::assign(_InputIterator, _InputIterator),
which calls basic_string::replace(iterator, iterator,
_Input_iterator, _InputIterator).
2003-06-20 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_performance.h (resource_counter): Don't use
mallinfo at the moment.
2003-06-20 Matthias Klose <doko@debian.org>
* configure.host: Set try_cpu to target_cpu for existing
baseline files.
2003-06-19 Andreas Jaeger <aj@suse.de>
* testsuite/Makefile.am (extract_symvers): Revert accidental
change.
* testsuite/Makefile.in: Regenerate.
* configure.in: Pass MULTISUBDIR to testsuite/Makefile.
* configure: Regenerated.
2003-06-19 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (_M_sync): Make non virtual.
2003-06-18 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_performance.h (time_counter): New.
(resource_counter): New.
(report_performance): New.
(start_counters): New.
(stop_counters): New.
(clear_counters): New.
* testsuite/performance/allocator.cc: Instrument.
* testsuite/performance/cout_insert_int.cc: Same.
* testsuite/performance/complex_norm.cc: Same.
* testsuite/performance/filebuf_sputc.cc: New.
* testsuite/performance/fstream_seek_write.cc: Same.
* testsuite/performance/ifstream_getline.cc: Same.
* testsuite/performance/map_create_fill.cc: Same.
* testsuite/performance/ofstream_insert_float.cc: Same.
* testsuite/performance/ofstream_insert_int.cc: Same.
* testsuite/performance/string_append.cc: Convert.
* scripts/check_performance: New.
* testsuite/Makefile.am (check-performance): New.
(CLEANFILES): Add.
2003-06-18 Paolo Carlini <pcarlini@unitus.it>
Benjamin Kosnik <bkoz@redhat.com>
* include/std/std_sstream.h (setbuf): Check __n >= 0.
* include/bits/fstream.tcc (setbuf): Tweak.
2003-06-18 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (seekoff): We can't seek beyond
_M_out_lim, therefore _M_move_out_cur boils down to simply
updating _M_out_cur.
(seekpos): Likewise, clean up.
2003-06-18 Nathan C. Myers <ncm-nospam@cantrip.org>
Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (setbuf): Allow (__s, 1) too,
simply equivalent to the unbuffered case (0, 0) as far as
_M_buf_size is concerned.
2003-06-18 Andreas Jaeger <aj@suse.de>
* testsuite/Makefile.am (new-abi-baseline): Create baseline
directory.
(baseline_file): Use baseline_dir.
(baseline_dir): New.
(mkinstalldirs): New.
* acinclude.m4: Rename baseline_file to baseline_dir, strip
filename from baseline_dir.
* testsuite/Makefile.in: Regenerated.
* Makefile.in: Regenerated.
* aclocal.m4: Regenerated.
* configure: Regenerated.
2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
* configure.in: Missed check_survey bit.
* configure: Regenerated.
2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
* scripts: New.
* config/abi/extract_symvers: Move to...
* scripts/extract_symvers: ...here.
* mkcheck.in: Move to..
* scripts/check_survey.in: ...here.
* testsuite_flags.in: Move to..
* scripts/testsuite_flags.in: ...here.
* configure.in: Change check and testsuite_flags locations.
* configure: Regenerate.
* testsuite/Makefile.am (current_symbols.txt): Change location.
* testsuite/Makefile.in: Regenerate.
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
location of testsuite_flags.
* Makefile.am (check-script): Move..
(check-script-install): Move...
* testsuite/Makefile.am: ... here.
* testsuite/Makefile.in: Regenerate.
* Makefile.in: Regenerate.
2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
* Makefile.am (check-abi): Move...
(new-abi-baseline): Move...
* testsuite/Makefile.am: ...here.
(new-abi-baseline): Conditionalize.
(check-abi): Conditionalize.
(check-abi-verbose): New.
* Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* configure.in: Consolidate testsuite configure bits.
* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
* configure: Regenerate.
* aclocal.m4: Regenerate.
* testsuite/abi_check.cc: Add --check-verbose.
Only output detailed information if --check-verbose.
2003-06-16 Andreas Jaeger <aj@suse.de>
* testsuite/abi_check.cc: Create summary report.
2003-06-16 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
for systems with BUFSIZ != 8192.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
Minor tweaks.
2003-06-16 Andreas Jaeger <aj@suse.de>
* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
check-abi multilib aware.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
Andreas Jaeger <aj@suse.de>
* configure.host: Set x86_64 abi_baseline pair correctly.
2003-06-16 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
fix for missing seeks between gets and puts into...
* testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
2003-06-15 Richard Henderson <rth@redhat.com>
* config/linker-map.gnu: Export virtual function thunks for
64-bit systems too.
2003-06-13 Benjamin Kosnik <bkoz@redhat.com>
* config/abi/i686-pc-linux-gnu: To..
* config/abi/i486-linux-gnu: ...this.
* config/abi/alphaev67-unknown-linux-gnu: To..
* config/abi/alpha-linux-gnu: ...this.
* config/abi/ia64-unknown-linux-gnu: To...
* config/abi/ia64-linux-gnu: ...this.
* config/abi/x86_64-unknown-linux-gnu: To...
* config/abi/x86_64-linux-gnu: ...this.
* config/abi/i386-unknown-freebsd4: To...
* config/abi/i386-freebsd4: ...this.
* config/linker-map.gnu: Cleanups, move libsupc++ bits into
CXXABI.
* configure.host: abi_baseline_triplet to abi_baseline_pair.
Simplify cpu bits so that abi_baseline_pair can use the same
cpu configuration.
* acinclude.m4: Same.
* aclocal.m4: Regenerate.
* configure.in: Can't get enable_abi_check to yes unless native.
* configure: Regenerate.
2003-06-13 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
fix for missing seeks between gets and puts into...
* testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
* testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
* testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
* testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
* testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
for missing seeks between gets and puts.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
* testsuite/data/seekoff-1.tst: New.
* testsuite/data/seekoff-2.tst: New.
* testsuite/data/seekpos-1.tst: New.
* testsuite/data/seekpos-2.tst: New.
2003-06-13 Nathan C. Myers <ncm-nospam@cantrip.org>
Avoid multi-processor bus contention on increment/decrement-and-
test of the reference count in the empty-string object, by comparing
addresses first, and never touching the reference count of the empty-
string object.
* include/bits/basic_string.h:
(_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
members.
(_Rep::_S_empty_rep()): New accessor.
(_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
a base class _Rep_base.
(_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
(basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
since no longer must increment its refcount.
* include/bits/basic_string.tcc:
(_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
return immediately. The former might be unnecessary. The latter
prevents begin() and end() from cloning it unnecessarily.
(_S_construct(_InIterator, _InIterator, const _Alloc&,
input_iterator_tag), _S_construct(_InIterator, _InIterator,
const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
(_M_mutate): Check for the empty string and treat it as shared.
This is necessary here because _M_mutate is sometimes called with
all-zero arguments; in all other uses of _M_is_shared, the test comes
out right anyhow.
2003-06-12 Benjamin Kosnik <bkoz@redhat.com>
* src/allocator-inst.cc: Explicitly instantiate.
* include/ext/pool_allocator.h: Inhibit implicit instantiations.
Tweaks.
* config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
* aclocal.m4: Regenerate.
* Makefile.am (SUBDIRS): Remove libio.
* Makefile.in: Regenerate.
* configure.in: Same.
* configure: Regenerate.
* config/io/basic_file_libio.cc: Remove.
* config/io/basic_file_libio.h: Remove.
* config/io/c_io_libio_codecvt.c: Remove.
* config/io/c_io_libio.h: Remove.
* libio/*: Remove.
* src/Makefile.am: Same.
* src/Makefile.in: Regenerate.
* docs/html/configopts.html: Edits.
* docs/html/explanations.html: Edits.
2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_alloc.h (__debug_alloc): Move out.
(__malloc_alloc): Same.
(__pool_alloc): Same.
(__new_alloc): Same.
Rename to..
* include/bits/allocator.h: ...this.
* include/bits/stl_deque.h: Modify comment.
* include/bits/stl_tree.h: Modify include.
* include/std/std_memory.h: Same.
* include/ext/rope: Same.
* include/ext/slist: Same.
* include/std/std_vector.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_queue.h: Same.
* include/std/std_list.h: Same.
* include/std/std_deque.h: Same.
* include/backward/alloc.h: Same.
* include/ext/debug_allocator.h: New.
* include/ext/malloc_allocator.h: New.
* include/ext/pool_allocator.h: New.
* include/ext/new_allocator.h: New.
* include/bits/pthread_allocimpl.h: Remove.
* include/bits/stl_pthread_alloc.h: Remove.
* include/Makefile.am (ext_headers): Add.
* include/Makefile.in: Regenerate.
* src/stl-inst.cc: Use __gnu_cxx namespace.
* src/stl-inst.cc: Move to...
* src/allocator-inst.cc: Here.
* src/Makefile.am (sources): Update.
* src/Makefile.in: Regenerate.
* config/linker-map.gnu: Remove __pool_alloc bits.
* testsuite/ext/headers.cc: Add.
* testsuite/ext/allocators.cc: Fixup.
2003-06-11 Stefan Olsson <stefan@snon.net>
Ola Rönnerup <fnolis@home.se>
* include/Makefile.am (ext_headers): Add.
* include/Makefile.in: Regenerate.
* include/ext/mt_allocator.h: New file.
2003-06-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (close): Clean up a bit.
* include/bits/streambuf.tcc (sbumpc): Clean up a bit.
* include/std/std_fstream.h (_M_destroy_pback): _M_pback_cur_save
- the saved _M_in_cur, that is - cannot be null.
(sync): Constify a variable.
* include/std/std_streambuf.h: Tweak a comment.
(in_avail): Constify a variable.
2003-06-10 Phil Edwards <pme@gcc.gnu.org>
* docs/html/17_intro/BUGS: Update from 2.90.8 snapshot.
* docs/html/17_intro/CHECKLIST: Bring up to date with respect to
correctness of container::iterator typedefs. Fix whitespace.
* docs/html/20_util/howto.html, docs/html/ext/howto.html: Add links
to allocator docs.
* docs/html/documentation.html: Regenerate.
* include/bits/basic_string.h, include/bits/basic_string.tcc,
include/bits/deque.tcc, include/bits/list.tcc, include/bits/stl_algo.h,
include/bits/stl_algobase.h, include/bits/stl_bvector.h,
include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
include/bits/stl_list.h, include/bits/stl_uninitialized.h,
include/bits/stl_vector.h, include/bits/vector.tcc,
include/ext/algorithm, include/ext/slist, include/std/std_bitset.h:
Change _Iter names to _Iterator, and __pos to __position.
* include/bits/stl_relops.h, include/bits/stl_numeric.h,
include/bits/stl_multiset.h, include/bits/stl_set.h:
Remove emacs markers.
* include/bits/stl_threads.h (_STL_auto_lock): Add __unused__.
2003-06-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (overflow): According to
27.5.2.4.5, overflow() returns not_eof(eof()).
* testsuite/27_io/basic_filebuf/overflow/char/2.cc: New.
* testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Ditto.
2003-06-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (_M_underflow): Check overflow return
value; tweak slightly.
2003-06-09 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (_M_underflow): Do not special
case the unbuffered case, which really means simply a one char
get area.
(basic_filebuf): Initialize _M_buf_size.
(setbuf): Unbuffered means _M_buf_size == 1, since only
_M_buf_size - 1 == 0 chars are going to be used for the
put area and 1 for the get area.
* include/std/std_streambuf.h (_M_buf_size): Move to basic_filebuf.
(~basic_streambuf): Tweak.
(basic_streambuf): Do not initialize _M_buf_size.
* include/std/std_fstream.h (_M_buf_size): Add from basic_streambuf.
(~basic_filebuf): Tweak.
(_M_set_buffer): Tweak, considering that _M_buf_size == 1 is the
unbuffered situation (i.e., put area pointers NULL).
* include/bits/streambuf.tcc (sbumpc): Clean up.
* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: New.
2003-06-09 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4: Move all AM_CONDITIONAL calls out.
(GLIBCPP_CONFIGURE): Set defaults for variables used in AM_CONDITIONAL
statements.
* configure.in: Centralize AM_CONDITIONALs so that they are always
run. Make use of GLIBCPP_IS_CROSS_COMPILING.
* aclocal.m4, configure: Regenerated.
2003-06-09 Paolo Carlini <pcarlini@unitus.it>
* docs/html/ext/howto.html ('LWG Issues'): Add issue 235.
2003-06-06 Nathan Myers <ncm-nospam@cantrip.org>
* include/bits/stl_iterator.h
(reverse_iterator::reverse_iterator()): Apply DR235: default
constructor default-initializes data member. Instantiated on a
pointer type, the member has to end up equal to zero.
2003-06-06 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_alloc.h: Cleanups.
* include/ext/functional: Same.
* include/ext/hash_map: Same.
* include/ext/hash_set: Same.
* include/ext/iterator: Same.
* include/ext/memory: Same.
* include/ext/numeric: Same.
* include/ext/rb_tree: Same.
* include/ext/ropeimpl.h: Same.
* include/ext/slist: Same.
* include/ext/stdio_filebuf.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/ext/stl_rope.h: Move to...
* include/ext/rope: ...here.
* include/ext/stl_hash_fun.h: Move to...
* include/ext/hash_fun.h: ...here.
* include/ext/stl_hashtable.h: Move to...
* include/ext/hashtable.h: ...here.
* include/backward/hashtable.h: Reflect new names.
* include/Makefile.am: Same.
* include/Makefile.in: Regenerated.
2003-06-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9024
* include/bits/fstream.tcc (_M_underflow): Fix for unbuffered.
* include/bits/stl_algobase.h: Tweak.
* include/std/std_fstream.h: Move _M_buf_size to...
* include/std/std_streambuf.h: ...here. Modify.
* include/bits/streambuf.tcc: Same.
* testsuite/testsuite_hooks.h: Tweak.
* testsuite/testsuite_io.h (constraint_filebuf): New.
* testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/2.cc: Split into...
* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/3.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2.cc: Split into...
* testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: New.
* testsuite/data/sgetc.txt: New.
* testsuite/data/sgetn.txt: New.
2003-06-05 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11095
* include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
Deal with width() smaller than zero.
* include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
operator<<(basic_ostream&, char), operator<<(basic_ostream&, const
_CharT*), operator<<(basic_ostream<_CharT, _Traits>&, const
char*), operator<<(basic_ostream<char, _Traits>&, const char*),
operator<<(basic_ostream, const basic_string&)): Likewise.
* testsuite/27_io/basic_istream/extractors_character/char/
(11095-i.cc, 11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
* testsuite/27_io/basic_ostream/inserters_character/char/
(11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
(11095-od.cc, 11095-oe.cc, 11095-of.cc): New.
2003-06-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* acinclude.m4 (GLIBCPP_CHECK_PCH): Only set glibcpp_PCHFLAGS if
.gch compilation works.
* aclocal.m4, configure: Regenerate.
* testsuite_flags.in (--build-cxx): Use glibcpp_PCHFLAGS to
initialize PCHFLAGS.
2003-06-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
erase(iterator), erase(iterator, iterator), c_str,
compare(const basic_string&)): Constify various variables.
* include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
_S_create, resize, _M_replace, _M_replace_safe,
append(const basic_string&), append(const basic_string&, size_type,
size_type), append(const _CharT*, size_type), append(size_type,
_CharT), operator+(const _CharT*, const basic_string&),
operator+(_CharT, const basic_string&), replace(iterator, iterator,
size_type, _CharT), find(const _CharT*, size_type, size_type),
find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
rfind(_CharT, size_type), compare(size_type, size_type,
const basic_string&), compare(size_type, size_type,
const basic_string&, size_type, size_type), compare(const _CharT*),
compare(size_type, size_type, const _CharT*), compare(size_type,
size_type, const _CharT*, size_type)): Likewise.
2003-06-03 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc (pbackfail): Make a rarely taken
'if' branch less obscure.
2003-06-02 Andrew Pinski <pinskia@physics.uc.edu>
PR libstdc++/9815
* config/cpu/i386/atomicity.h (__exchange_and_add): add intel
asm case to asm.
* config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
(__atomic_add): likewise.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (pbackfail): Minor clean up and
reformatting, consistent with basic_filebuf::pbackfail.
2003-06-02 Richard Kreckel <Richard.Kreckel@GiNaC.DE>
PR libstdc++/11062
* config/cpu/mips/atomicity.h: Change __attribute__ ((unused)) to
__attribute__ ((__unused__)).
* config/os/aix/atomicity.h: Likewise.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9761
* include/bits/fstream.tcc (pbackfail): If the pback buffer
is already active don't try to store in it a second char.
* testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
* include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
line spacing.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
instead of unnecessarily taking the address of _M_pback.
(xsgetn): Simplify slightly for a single char pback buffer.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (seekoff): Remove four unnecessary
variables and two 'if', clean up.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (seekpos): Test against _M_out_lim
not _M_out_end, since the former actually points to the string
end (vs buffer end).
* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
2003-05-30 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/filter: New file.
* docs/doxygen/filter.sed: New file.
* docs/doxygen/run_doxygen: Add g flag to sed substitutions. Duh.
* docs/doxygen/user.cfg.in (INPUT_FILTER): Point to new filter.
* docs/html/documentation.html: Fix links to doxygen pages.
2003-05-30 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (_M_convert_to_external): Don't
check for __ilen > 0.
2003-05-29 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
PR libstdc++/10783
* include/bits/stl_iterator.h (class __normal_iterator):
Don't inherit from iterator, add missing typedefs.
2003-05-29 Paolo Carlini <pcarlini@unitus.it>
* testsuite/24_iterators/reverse_iterator.cc: Split up, as follows.
* testsuite/24_iterators/reverse_iterator/1.cc: New.
* testsuite/24_iterators/reverse_iterator/2.cc: New.
* testsuite/24_iterators/reverse_iterator/3.cc: New, from
PR libstdc++/10783.
2003-05-27 Steve Ellcey <sje@cup.hp.com>
* config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
on IA64 HP-UX.
* libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
_LIBUNWIND_STD_ABI is set.
2003-05-26 Brendan Kehoe <brendan@zen.org>
* include/bits/locale_facets.tcc (do_get): Honor $22.2.6.3.3/8 and
make sure the number of digits required after the decimal-point
(if any) is exactly the value returned by frac_digits().
* testsuite/22_locale/money_get/get/char/9.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/9.cc: New.
2003-05-27 Jonathan Wakely <redi@gcc.gnu.org>
* include/std/std_istream.h, include/std/std_ostream.h: Typo in
comment.
2003-05-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9339
* include/std/std_fstream.h (basic_filebuf::_M_overflow): Remove.
(_M_pback): No array necessary.
* include/bits/fstream.tcc (basic_filebuf::_M_overflow): Add
unbuffered case, coalesec into ...
(basic_filebuf::overflow): ...this.
* testsuite/27_io/basic_filebuf/sputn/char/9339.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2.cc: Unbuffered.
2003-05-24 Nathanael Nerode <neroden@gcc.gnu.org>
* libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc,
libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc,
libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc,
libsupc++/eh_catch.cc, libsupc++/eh_exception.cc,
libsupc++/eh_globals.cc, libsupc++/eh_personality.cc,
libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc,
libsupc++/eh_throw.cc, libsupc++/eh_type.cc,
libsupc++/eh_unex_handler.cc, libsupc++/exception,
libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc,
libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc,
libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc,
libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc:
Replace "GNU CC" with "GCC".
* include/backward/new.h: Replace "GNU CC" with "GCC".
2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/3066.
* configure.in: Switch target to host, don't assume newlib.
(target_alias): Remove.
* configure: Regenerate.
* acinclude.m4: Same.
* aclocal.m4: Regenerate.
* configure.target: Same. Rename to...
* configure.host: This.
2003-05-22 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_S_pback_size): Remove definition.
(_M_create_pback(), _M_destroy_pback()): Simplify for a single-char
pback buffer.
* include/bits/fstream.tcc (_S_pback_size): Remove declaration.
* testsuite/27_io/basic_filebuf/3.cc: Remove explicit instantiation
of _S_pback_size for systems with no COMDAT or weak support.
* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/underflow/10096.cc: Likewise.
* testsuite/27_io/basic_fstream/3.cc: Likewise.
* testsuite/27_io/basic_ifstream/3.cc: Likewise.
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Likewise.
* testsuite/27_io/basic_ofstream/3.cc: Likewise.
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Likewise.
* testsuite/27_io/basic_streambuf/3.cc: Likewise.
2003-05-22 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (_M_underflow): Simplify:
!__testout implies _M_filepos == _M_in_end, therefore
the first _M_file.seekoff call is never issued.
2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
* configure.in: Sort cross table.
* configure: Regenerate.
2003-05-22 Brad Spencer <spencer@infointeractive.com>
PR libstdc++/10106
* configure.in: Add Solaris cross bits.
2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
* libstdc++-v3/config/os/mingw32/os_defines.h
(__GTHREAD_HIDE_WIN32API): Define to 1 by defualt.
(NOMINMAX): Define. Update copyright year.
2003-05-21 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_M_set_buffer): Fix indentation.
2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/faq/index.html: Fix typo.
* docs/html/faq/index.txt: Regenerate.
2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/test.html: Fix markup.
2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
* libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
zero.
Update copyright year.
2003-05-20 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/4.cc: Fix typo.
2003-05-20 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/5.cc: New file,
further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
2003-05-20 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
* include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
Cast via void* to avoid -Wcast-align warnings.
(__default_alloc_template::_S_refill): Likewise.
2003-05-20 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/README: Move to...
* docs/html/test.html: ...here. Add documentation.
* docs/html/install.html: Move testing bits out..
* docs/html/documentation.html: Add separate testing link.
* testsuite/performance: Add.
* testsuite/performance/allocator.cc: New.
* testsuite/performance/complex_norm.cc: New.
* testsuite/performance/cout_insert_int.cc: New.
* testsuite/performance/fstream_seek_write.cc: New.
* testsuite/performance/ifstream_getline.cc: New.
* testsuite/performance/map_create_fill.cc: New.
* testsuite/performance/ofstream_insert_float.cc: New.
* testsuite/performance/ofstream_insert_int.cc: New.
* testsuite/performance/string_append.cc: New.
* testsuite/lib/libstdc++-v3-dg.exp (v3-compute-tests): Filter
performance tests.
2003-05-20 Gabriel Dos Reis <gdr@integrable-solutions.net>
PR libstdc++/10689
* include/std/std_complex.h (pow): Tidy.
2003-05-19 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/4.cc: New file, testing
that upon filebuf::close() 27.8.1.1,3 is enforced.
2003-05-15 Loren J. Rittle <ljrittle@acm.org>
* testsuite/thread/pthread4.cc: Further tweak to avoid fini race.
2003-05-15 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
* include/bits/fstream.tcc (_M_overflow): Rewrote to call
_M_convert_to_external only once (_M_buf_size is now the size of
the put area + 1 for the overflow char of a full area); call
_M_set_buffer instead of _M_set_indeterminate.
(setbuf): Don't accept a buffer smaller than 2 chars.
(_M_underflow): Refill _M_buf_size - 1 chars; call _M_set_buffer,
instead of _M_set_determinate.
(open): Call _M_set_buffer, instead of _M_set_indeterminate.
(seekoff): Likewise.
* include/ext/stdio_filebuf.h (stdio_filebuf(int,
std::ios_base::openmode, bool, size_t),
stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t):
Likewise.
* include/std/std_fstream.h (_M_set_indeterminate): Remove.
(_M_set_determinate): Rename as _M_set_buffer, _M_buf_size ->
_M_buf_size - 1.
* include/std/std_streambuf.h: Tweak _M_out_lim comment.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Tweak, taking
into account that, for _M_buf_size == BUFSIZ == 8192, the size of
the put area is now BUFSIZ - 1.
* testsuite/ext/stdio_filebuf_2.cc: Tweak, taking into account
that now the smallest _M_buf_size is 2 (still fails, for the same
reason, with 3.2.3)
2003-05-14 Loren J. Rittle <ljrittle@acm.org>
* testsuite/thread/pthread4.cc: Tweak test.
2003-05-13 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base/cons/copy_neg.cc: Remove
excess errors dg marker, use dg-errors instead.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
* testsuite/20_util/auto_ptr_neg.cc: Same.
2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
* include/std/std_fstream.h (basic_filebuf::_M_codecvt): Add
cached member.
* include/bits/fstream.tcc (basic_filebuf::basic_filebuf):
Initialize _M_codecvt.
(basic_filebuf::imbue): Same.
(basic_filebuf::showmanyc): Use it.
(basic_filebuf::underflow): Use it.
(basic_filebuf::_M_convert_to_external): Use it.
(basic_filebuf::seekoff): Use it.
(basic_filebuf::imbue): Use it, tweaks.
* include/bits/localefwd.h (__check_facet): New.
* include/bits/locale_classes.h: Tweaks.
* include/bits/locale_facets.tcc: Tweaks.
* include/bits/basic_ios.h (basic_ios::_M_check_facet): Remove.
_M_fctype to _M_ctype, _M_fnumput to _M_num_put, _M_fnumget to
_M_num_get. Change _M_check_facet to __check_facet. Tweaks.
* include/bits/basic_ios.tcc: Same.
* include/bits/istream.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/std/std_streambuf.h: Same.
* testsuite/27_io/basic_filebuf/imbue/char/2.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/3.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/1.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: New.
2003-05-12 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Remove
unnecessary includes and unused string literals.
* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc (_M_overflow): Remove unbuffered bits.
2003-05-12 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_M_convert_to_external): Change
to return bool, take two less streamsize parameters.
* include/bits/fstream.tcc (_M_convert_to_external): Tweak
consistently definition.
(_M_overflow): Adjust call points.
2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/basic_filebuf/underflow/10096.cc: Add weak bits.
2003-05-11 Phil Edwards <pme@gcc.gnu.org>
* testsuite/Makefile.am: Properly quote /both/ LD_RUN_PATHs.
* testsuite/Makefile.in: Regenerate.
2003-05-11 Phil Edwards <pme@gcc.gnu.org>
* testsuite/Makefile.am: Properly quote LD_RUN_PATH.
* testsuite/Makefile.in: Regenerate.
2003-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
PR libstdc++/3181
* include/c_std/std_cmath.h: #include <bits/cpp_type_traits.h>
(acos): Handle integer argument.
(asin): Likewise.
(atan): Likewise.
(atan2): Likewise.
(ceil): Likewise.
(cos): Likewise.
(cosh): Likewise.
(exp): Likewise.
(fabs): Likewise.
(floor): Likewise.
(frexp): Likewise.
(ldexp): Likewise.
(log): Likewise.
(log10): Likewise.
(sin): Likewise.
(sinh): Likewise.
(sqrt): Likewise.
(tan): Likewise.
(tanh): Likewise.
* include/bits/cpp_type_traits.h (__are_same<>): New traits.
(__enable_if): Likewise.
* testsuite/26_numerics/cmath/overloads.C: New test.
2003-05-10 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9027
PR libstdc++/9520
PR libstdc++/10096
* include/bits/fstream.tcc (basic_file::_M_underflow): Add generic
implementation, based on old wchar_t specialization, add support
for codecvt::in() return value of codecvt_base::noconv, remove
_M_file.sys_ungetc() call.
* include/std/std_fstream.h (basic_file::underflow,
basic_file::uflow, basic_file::_M_underflow): Remove
specialization declarations, call _M_underflow from generic versions
of underflow and uflow.
* src/fstream.cc (basic_file::underflow, basic_file::uflow,
basic_file::_M_underflow): Remove specializations.
* src/Makefile.am (sources): Remove fstream.cc.
* src/Makefile.in: Regenerated.
* testsuite/27_io/basic_filebuf/underflow/10096.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/char/1.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/char/9027.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: New test.
2003-05-10 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/stdio_filebuf.h (__stdio_filebuf): Remove stack
buffer.
* config/io/basic_file_stdio.h (__basic_file::xsgetn): Remove
unbuffered bits.
(__basic_file::xsputn): Same.
(__basic_file::seekoff): Same.
(__basic_file::seekpos): Same.
(__basic_file::showmanyc): Same.
* config/io/basic_file_stdio.cc: Same.
* include/std/std_fstream.h: Same.
* include/bits/fstream.tcc: Same.
* src/fstream.cc: Same.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc (test05): Tidy.
2003-05-10 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9520
PR libstdc++/9661
PR libstdc++/9662
* include/ext/stdio_sync_filebuf.h: New file.
(basic_stdiobuf): New.
* include/Makefile.am (ext_headers): Add ext/stdio_sync_filebuf.h
* include/Makefile.in: Regenerate.
* include/bits/ios_base.h (Init::_S_create_buffers,
Init::_S_destroy_buffers): Remove declarations.
* src/globals.cc (buf_cout_sync, buf_cin_sync, buf_cerr_sync,
buf_wcout_sync, buf_wcin_sync, buf_wcerr_sync): Define.
* src/ios.cc (Init::_S_create_buffers,
Init::_S_destroy_buffers): Remove.
(Init::Init): Create and use syncronized buffers.
(ios_base::sync_with_stdio): Destroy syncronized buffers,
create and install unsyncronized buffers.
* testsuite/27_io/objects/char/10.cc: New test.
* testsuite/27_io/objects/char/9.cc: New test.
* testsuite/27_io/objects/char/9661-1.cc: New test.
* testsuite/27_io/objects/char/9661-2_xin.cc: New test.
* testsuite/27_io/objects/char/9661-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/1.cc: New test.
* testsuite/27_io/objects/wchar_t/10.cc: New test.
* testsuite/27_io/objects/wchar_t/2.cc: New test.
* testsuite/27_io/objects/wchar_t/2523-1_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/2523-1_xin.in: New.
* testsuite/27_io/objects/wchar_t/2523-2_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/2523-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/3045.cc: New test.
* testsuite/27_io/objects/wchar_t/3647.cc: New test.
* testsuite/27_io/objects/wchar_t/3_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/3_xin.in: New.
* testsuite/27_io/objects/wchar_t/4_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/4_xin.in: New.
* testsuite/27_io/objects/wchar_t/5.cc: New test.
* testsuite/27_io/objects/wchar_t/5268.cc: New test.
* testsuite/27_io/objects/wchar_t/5280_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/5280_xin.in: New.
* testsuite/27_io/objects/wchar_t/6.cc: New test.
* testsuite/27_io/objects/wchar_t/6548_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/6548_xin.in: New.
* testsuite/27_io/objects/wchar_t/6648-1_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/6648-1_xin.in: New.
* testsuite/27_io/objects/wchar_t/6648-2_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/6648-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/7.cc: New test.
* testsuite/27_io/objects/wchar_t/7744_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/7744_xin.in: New.
* testsuite/27_io/objects/wchar_t/8.cc: New test.
* testsuite/27_io/objects/wchar_t/9_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/9_xin.in: New.
* testsuite/27_io/objects/wchar_t/9520.cc: New test.
* testsuite/27_io/objects/wchar_t/9661-1.cc: New test.
* testsuite/27_io/objects/wchar_t/9661-2_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/9661-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/9662.cc: New test.
* testsuite/ext/stdiobuf_char.cc: New test.
* testsuite/ext/stdiobuf_wchar_t.cc: New test.
2003-05-10 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/3.cc: Remove
unnecessary includes and unused string literals.
* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
2003-05-08 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (setg, setp): Don't touch _M_mode.
2003-05-07 Richard Henderson <rth@redhat.com>
PR c++/10570
* libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
(__cxa_end_catch): Likewise.
* libsupc++/eh_throw.cc (__cxa_rethrow): Likewise. Use
_Unwind_Resume_or_Rethrow.
* libsupc++/eh_personality.cc (empty_exception_spec): New.
(PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
for _UA_FORCE_UNWIND. Honor empty filter spec for foreign
exceptions. Don't push terminate/unexpected to cxa functions.
(__cxa_call_unexpected): Remove foreign exception fixmes.
2003-05-07 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base/cons: New.
* testsuite/27_io/ios_base/cons/assign_neg.cc: New.
* testsuite/27_io/ios_base/cons/copy_neg.cc: New.
2003-05-07 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_M_is_indeterminate): Remove.
* src/fstream.cc
(basic_filebuf<char/wchar_t>::_M_underflow): Simplify: either
there is no buffer or __testget == !__testinit.
* src/fstream.cc
(basic_filebuf<char/wchar_t>::_M_underflow): _M_set_determinate()
automatically sets, if appropriate, _M_out_cur == _M_in_cur.
* include/std/std_fstream.h (_M_destroy_pback): Don't set
unnecessarily _M_pback_cur_save and _M_pback_end_save.
* include/std/std_fstream.h (_M_set_determinate): Minor tweak.
* include/std/std_sstream.h (_M_sync): Minor tweak.
* include/bits/fstream.tcc (close): No need to call
_M_destroy_pback, setting _M_pback_init to false suffices
to clean up.
2003-05-06 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_algo.h: Enums as _S_.
* include/bits/stl_tree.h: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_alloc.h: Same.
* include/ext/stl_hashtable.h: Same.
* src/ios.cc: And here.
* include/std/std_sstream.h: Replace _M_really_sync to _M_sync.
* include/bits/sstream.tcc: Same.
* include/bits/basic_ios.h: Correct spacing for '< ctype'.
* include/bits/locale_facets.tcc: Replace __temp to __tmp.
* include/bits/locale_facets.h (__num_base): Remove protected.
Use _S_[io]* names for enumerations.
(_S_format_int): Remove.
* include/bits/locale_facets.tcc: Same.
* src/locale.cc: Same.
* include/std/std_sstream.h (stringbuf::str): Tweak formatting.
2003-05-06 Phil Edwards <pme@gcc.gnu.org>
* docs/html/faq/index.html (3.10): Add note about mips atomicity.h.
* docs/html/faq/index.txt: Regenerated.
2003-05-06 Michael Ritzert <Ritzert@t-online.de>
Matt Kraai <kraai@alumni.cmu.edu>
* include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): Tweak.
And retweak.
2003-05-06 Richard Sandiford <rsandifo@redhat.com>
* configure.target (mips*): Use the generic atomicity.h by default.
2003-05-05 Loren J. Rittle <ljrittle@acm.org>
(Inspired by an alternate patch from Danny Smith.)
* include/bits/stl_threads.h (_Atomic_swap): Kill it...
(_Swap_lock_struct<>): ...and the horse it rode in on.
* src/globals.cc (_Swap_lock_struct<>): Likewise.
* include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): New
member to support...
* include/ext/ropeimpl.h (rope<>::c_str): Follow *all* memory
visibility rules related to POSIX threads.
* testsuite/thread/pthread7-rope.cc: New test.
2003-05-04 Paolo Carlini <pcarlini@unitus.it>
* testsuite/21_strings/basic_string/find/char/3.cc: New
file, testing basic_string<char>::find_first_not_of.
* testsuite/21_strings/basic_string/find/wchar_t/3.cc:
Likewise for basic_string<wchar_t>.
2003-05-03 Loren J. Rittle <ljrittle@acm.org>
* testsuite/thread/pthread1.cc: Remove special case for FreeBSD.
2003-05-02 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (CLEANFILES): Remove PCH files in target
directory.
* include/Makefile.in: Regenerate.
2003-05-02 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (str()): Tidy.
2003-05-02 Nathan Myers <ncm@cantrip.org>
Paolo Carlini <pcarlini@unitus.it>
* include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
2003-05-02 Jonathan Wakely <redi@gcc.gnu.org>
* include/bits/basic_string.h (swap): Remove redundant template
parameters from declaration of non-template member function.
2003-05-01 Phil Edwards <pme@gcc.gnu.org>
* acconfig.h (_GLIBCPP_USE_NLS): New symbol.
* configure.in: Move libintl.h header test...
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): ...to here. Gather all
the NLS-related test results into one symbol.
* src/functexcept.cc: Use it here.
* aclocal.m4, config.h.in, configure: Regenerated.
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (overflow): Instead of calling
str(), then _M_string.reserve, thus copying the contents
of the current buffer two times, just copy the latter in
a temporary, then use the 'swap trick'.
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (str()): Revert the best of the
previous 'improvement', incorrect due to the COW nature of
v3 basic_string; simplify.
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/bits/streambuf.tcc (__copy_streambufs): Adjust the
type of __avail to ptrdiff_t to avoid signed-unsigned warning.
2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/abi_check.cc (check_version): Update known versions.
Check added symbols for version_name != base version. Add missing
symbols to incompatible list.
2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
* aclocal.m4: Regenerated.
* configure: Regenerated.
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/bits/streambuf.tcc (basic_streambuf::xsgetn):
Const-ify some variables.
(basic_streambuf::xsputn): Likewise; change the type of some
variables to size_t.
(__copy_streambufs): Change some variables to size_t.
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (str()): Avoid constructing
a basic_string temporary not only when it would turn out
to be zero-sized but also when identical to the current
_M_string buffer.
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/ext/stdio_filebuf.h
(stdio_filebuf(int, std::ios_base::openmode, bool, size_t),
stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t)):
Shorten a bit (-10 lines) by factoring out some code.
2003-04-30 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4: Add bit missing from previous patch.
* aclocal.m4, configure: Regenerated.
2003-04-29 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/mainpage.html: Bring up to date.
* docs/doxygen/run_doxygen: Cosmetic tweaks. Work around a bug
in Doxygen.
* docs/doxygen/user.cfg.in: Scanning the precompiled headers
breaks everything. Don't scan them.
* docs/html/documentation.html: Point to "Write after approval"
notes.
2003-04-29 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Search for gettext outside
of libc if message translations are being used. Fix info text in
xieee_1003.1-2001 case.
* aclocal.m4, configure: Regenerate.
2003-04-29 Joel Sherrill <joel.sherrill@OARcorp.com>
Loren J. Rittle <ljrittle@acm.org>
Martin v. Löwis <martin@v.loewis.de>
* config/cpu/i386/atomicity.h: New file.
2003-04-29 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (open): Change to single return.
2003-04-29 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (underflow): Change to single return.
2003-04-28 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (_M_buf): is currently
used only for basic_filebuf, therefore move it there.
(basic_streambuf(), ~basic_streambuf()): Adjust.
* include/std/std_fstream.h (_M_buf): Moved here.
* include/std/std_sstream.h (setbuf): Don't set _M_buf,
is actually redundant for basic_stringbuf.
(_M_really_sync): Likewise.
* include/bits/fstream.tcc (basic_filebuf()): Adjust.
* include/bits/sstream.tcc (seekoff): Adjust.
2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
* src/localename.cc: Standardize exception strings.
* src/locale.cc: Same.
* src/ios.cc: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/basic_ios.tcc: Same.
* include/std/std_bitset.h: Same.
* include/ext/ropeimpl.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_bvector.h: Same.
* config/locale/generic/c_locale.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
* testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.
2003-04-28 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (_M_buf_size): is currently
used only for basic_filebuf, therefore move it there.
(basic_streambuf(), ~basic_streambuf()): Adjust.
* include/std/std_fstream.h (_M_buf_size): Moved here.
* include/bits/fstream.tcc (basic_filebuf()): Adjust.
2003-04-28 Paolo Carlini <pcarlini@unitus.it>
* include/bits/streambuf.tcc (__copy_streambufs): Don't use
_M_buf_size (synced input is now correctly dealt with
elsewhere); when the output buffer is full don't fall back
to a snextc-sputc loop, call overflow instead.
2003-04-28 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (pbackfail): Shorten a bit (6 lines)
the innermost 'if' by factoring out some code.
2003-04-28 Phil Edwards <pme@gcc.gnu.org>
* configure.in: Test for libintl.h.
* include/bits/c++config: Define __N for everybody.
* include/bits/basic_string.h, include/bits/stl_bvector.h,
include/bits/stl_deque.h, include/bits/stl_vector.h,
include/std/std_bitset.h: Wrap all __throw* text with __N.
* po/Makefile.am (pot): New rule, mostly working.
* src/functexcept.cc: Call gettext on all __throw* arguments when
-fexceptions is in effect.
* po/Makefile.in, config.h.in, configure: Regenerate.
2003-04-28 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9523
* include/bits/ios_base.h (Init::_S_ios_create,
Init::_S_ios_destroy): Remove declarations.
(Init::_S_create_buffers,
Init::_S_destroy_buffers): Declare
* src/ios.cc (Init::_S_ios_create): Remove
(Init::_S_create_buffers): Create buffers and add to streams.
(Init::_S_ios_destroy): Rename to...
(Init::_S_destroy_buffers): this.
(Init::Init): Only construct streams once.
(Init::~Init): Flush streams, don't destroy them.
(ios_base::sync_with_stdio): Don't destroy streams, only buffers.
* testsuite/27_io/ios_base/sync_with_stdio/9523.cc: New test.
* testsuite/27_io/objects/char/5.cc: New test.
* testsuite/27_io/objects/char/5268.cc: Avoid undefined behavior.
* testsuite/27_io/objects/char/6.cc: New test.
* testsuite/27_io/objects/char/7.cc: New test.
2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/objects/char/8.cc: New test.
2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/codecvt/unicode/char.cc: Remove bom usage.
* testsuite/22_locale/codecvt/unicode/wchar_t.cc: Same.
2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
* include/std/std_fstream.h (basic_filebuf): _M_pback_destroy to
_M_destroy_pback. _M_pback_create to
_M_create_pback. _M_underflow_common to
_M_underflow. _M_really_overflow to _M_overflow.
* include/bits/fstream.tcc: Same.
* src/fstream.cc: Same.
* include/std/std_streambuf.h (basic_streambuf): _M_in_cur_move to
_M_move_in_cur. _M_out_cur_move to _M_move_out_cur.
* include/bits/streambuf.tcc: Same.
* include/bits/fstream.tcc: Same.
* include/bits/sstream.tcc: Same.
2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_classes.h (locale::_Impl): Change _M_names
from fixed size array.
(locale): Change _S_categories as well.
Formatting tweaks.
* include/bits/locale_facets.tcc: Tweak.
* config/locale/gnu/c_locale.cc: Assign _S_categories.
* config/locale/generic/c_locale.cc: Same.
* src/locale.cc: Tweak.
* src/globals.cc: Change facet_name to name_vec, add names_c.
* src/localename.cc: Use them.
(locale::_Impl::~_Impl): Destroy _M_names.
(locale::_Impl::_Impl): Create _M_names.
2003-04-27 Andreas Schwab <schwab@suse.de>
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
(__enc_traits): Use __ibom and __ebom instead of ignoring them.
2003-04-27 Nathan Myers <ncm@cantrip.org>
Move some basic_string members out of line because
they are too big to reasonably be inline.
* include/bits/basic_string.h
(assign(const basic_string&, size_type, size_type),
assign(const _CharT*, size_type),
insert(size_type, const basic_string&, size_type, size_type),
insert(size_type, const _CharT*, size_type),
replace(size_type, size_type, const _CharT*, size_type)):
Move from here to...
* include/bits/basic_string.tcc: ...here.
2003-04-26 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (pbackfail): Shorten a bit (10 lines)
the innermost 'if' by factoring out some code.
2003-04-26 Paolo Carlini <pcarlini@unitus.it>
* include/bits/streambuf.tcc (__copy_streambufs): Don't
use in_avail(), simplify.
2003-04-26 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (setbuf): don't set _M_buf_size,
in basic_stringbuf it's unused.
* include/std/std_sstream.h (underflow): consistently use
_M_in_cur, not gptr().
2003-04-25 Ranjit Mathew <rmathew@hotmail.com>
Phil Edwards <pme@gcc.gnu.org>
* testsuite_flags.in: Guard against the possibility
of having "xgcc" as a part of a folder name in the
path to the GCC build folder.
* testsuite/Makefile.am: Likewise.
* testsuite/Makefile.in: Regenerated.
2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10132
* include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
exception specifications.
(basic_filebuf::close): Same.
(basic_filebuf::_M_pback_destroy): Same.
(basic_filebuf::_M_destroy_internal_buffer): Same.
(basic_filebuf): Remove __res_type typedef.
* src/fstream.cc: Same.
* include/bits/fstream.tcc
(basic_filebuf::_M_convert_to_external): Simplify.
(basic_filebuf::seekoff): Use has_facet before use_facet.
(basic_filebuf::close): Add exception specification of throw().
* testsuite/27_io/basic_filebuf/cons: New.
* testsuite/27_io/basic_filebuf/cons/wchar_t: New.
* testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: New.
* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: New.
* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: New.
2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_classes.h
(locale::_S_extra_categories_size): Remove.
* src/locale.cc: Remove _S_extra_categories_size.
* src/localename.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/generic/c_locale.cc: Same.
2003-04-24 Richard Sandiford <rsandifo@redhat.com>
* src/localename.cc (__gnu_cxx::facet_vec): Correct types.
2003-04-24 Phil Edwards <pme@gcc.gnu.org>
* docs/html/17_intro/howto.html: Update some links.
* docs/html/18_support/howto.html: Link doxygen numeric_limits notes.
* docs/html/27_io/howto.html: Link doxygen stdio_filebuf notes.
* docs/html/ext/howto.html: Link to demangler notes and API.
* docs/html/faq/index.html: Remove trailing whitespace.
(1.4, 2.4, 3.8, 4.1): Bring up to date.
(5.6): Change to a bulleted list.
* docs/html/faq/index.txt, docs/html/documentation.html,
docs/html/17_intro/porting.html: Regenerate.
2003-04-23 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/3.cc: _S_pback_size now
belongs to basic_filebuf.
* testsuite/27_io/basic_fstream/3.cc: Likewise.
* testsuite/27_io/basic_ifstream/3.cc: Likewise.
* testsuite/27_io/basic_ios/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_iostream/3.cc: Likewise.
* testsuite/27_io/basic_istream/3.cc: Likewise.
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
_S_pback_size now belongs to basic_filebuf.
* testsuite/27_io/basic_istringstream/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_ofstream/3.cc: _S_pback_size now
belongs to basic_filebuf.
* testsuite/27_io/basic_ostream/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc:
_S_pback_size now belongs to basic_filebuf.
* testsuite/27_io/basic_ostringstream/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_streambuf/3.cc: _S_pback_size now belongs
to basic_filebuf.
* testsuite/27_io/basic_stringbuf/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_stringstream/3.cc: Likewise.
2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
* configure.in: Move GLIBCPP_CHECK_PCH before native/cross conditions.
* configure: Regenerated.
2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
* config/locale/generic/c_locale.h (__convert_from_v): Use
attribute unused.
2003-04-23 Phil Edwards <pme@gcc.gnu.org>
* docs/html/ext/howto.html ('LWG Issues'): Add issue 60, partial
implementation only.
* include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
Comment and change to comply with DR 60 and the effect on gcount().
* include/std/std_istream.h: Update comments.
* testsuite/27_io/basic_istream/putback/char/1.cc (test01): Add
comments about reasons for tests. Test sync() against gcount().
* testsuite/27_io/basic_istream/seekg/char/2.cc: New file, test
for effect on gcount().
* testsuite/27_io/basic_istream/tellg/char/2.cc: New file, test
for effect on gcount().
2003-04-22 Loren J. Rittle <ljrittle@acm.org>
* testsuite/27_io/basic_filebuf/close/char/9964.cc (test_07):
Adjust timing.
2003-04-22 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (_S_pback_size, _M_pback,
_M_pback_cur_save, _M_pback_end_save, _M_pback_init,
_M_pback_create(), _M_pback_destroy()): Move to basic_filebuf.
(basic_streambuf::basic_streambuf()): Adjust.
* include/std/std_fstream.h (_S_pback_size, _M_pback,
_M_pback_cur_save, _M_pback_end_save, _M_pback_init,
_M_pback_create(), _M_pback_destroy()): Moved here
from basic_streambuf.
* include/bits/fstream.tcc (basic_filebuf::basic_filebuf()):
Adjust.
(basic_filebuf::_S_pback_size): Add declaration.
* include/bits/streambuf.tcc (basic_streambuf::_S_pback_size):
Remove declaration.
2003-04-21 Paolo Carlini <pcarlini@unitus.it>
Consistently use _M_in_beg instead of eback(), _M_in_cur
instead of gptr(), and so on.
* include/bits/fstream.tcc (pbackfail, imbue): Here.
* include/bits/sstream.tcc (pbackfail, seekoff, seekpos): Ditto.
* include/bits/streambuf.tcc (sbumpc, sputbackc,
__copy_streambufs): Ditto.
* include/std/std_streambuf.h (sgetc): Ditto.
2003-04-21 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (pbackfail, overflow):
Formatting fixes.
2003-04-21 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (uflow()): It's used only by
basic_stringbuf (i.e., basic_filebuf provide its own uflow()),
therefore do not consider the _M_buf_unified == true case.
* include/std/std_streambuf.h (sgetc()): Restore __ret variable.
2003-04-20 Paolo Carlini <pcarlini@unitus.it>
* docs/html/ext/howto.html ('LWG Issues'):
Add issues 19, 90, 171, 231, 271.
2003-04-20 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (pbackfail): Remove redundant
NULL pointer check from test involving _M_in_*.
(overflow, seekoff, seekpos): Const qualify bool variables.
* include/std/std_sstream.h (underflow): Remove redundant
NULL pointer check from test involving _M_in_*.
(_M_really_sync): Const qualify bool variables.
* src/fstream.cc (_M_underflow_common): Remove redundant
NULL pointer check from test involving _M_in_*, const qualify
bool variables.
* include/std/std_streambuf.h (sgetc): Remove redundant
variable.
2003-04-18 Paolo Carlini <pcarlini@unitus.it>
According to 5.9 para 2 (second bullet) for pointers p, q
pointing to the same type, with p == 0 and q == 0, (p < q)
is false.
* include/bits/fstream.tcc (close, overflow, _M_really_overflow,
seekoff): Remove redundant NULL pointer checks from tests
involving _M_out_* and _M_in_*, const qualify bool variables.
(showmanyc, pbackfail, _M_convert_to_external, imbue): Const
qualify bool variables.
* include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc, sputc):
Remove redundant NULL pointer checks from tests involving
_M_out_* and _M_in_*, const qualify bool variables.
* include/std/std_fstream.h (sync): Likewise.
(_M_is_indeterminate): Const qualify bool variables.
* include/std/std_streambuf.h (sgetc, uflow): Remove redundant
NULL pointer checks from tests involving _M_out_* and _M_in_*,
const qualify bool variables.
(_M_in_cur_move, _M_out_cur_move, uflow): Const qualify bool
variables.
2003-04-18 Loren J. Rittle <ljrittle@acm.org>
* include/c_std/std_cmath.h (C99 FP capture): Only undefine said
C99 FP macros, if actually captured.
* docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
(_GLIBCPP_USE_C99_DYNAMIC): New macro.
(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
* config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
New macro.
(_GLIBCPP_USE_C99_DYNAMIC): New macro.
(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
* include/c_std/std_cstdlib.h: Use new macros.
* include/c_std/std_cstdio.h: Use new macros.
* include/c_std/std_cwchar.h: Use new macros.
2003-04-17 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9555
* include/bits/ostream.tcc: Catch all exceptions for formatted
output, instead of std::exception and derivatives.
* include/bits/istream.tcc: Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
* testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
* testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
* testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
* testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
New.
2003-04-17 Phil Edwards <pme@gcc.gnu.org>
* include/bits/c++config: Minor cosmetic tweaks.
2003-04-17 Loren J. Rittle <ljrittle@acm.org>
* testsuite_flags.in (PCHFLAGS): Find PCH in new home.
* include/Makefile.am (pch_input): Find in ${target_builddir}.
(pch_output): Rename to...
(pch_output_builddir): ..this. Find in ${target_builddir}.
(pch_source): Tweak.
(pch_build): Key off a built file.
(pch_output rule): Rename to...
(pch_input rule): ...this. Produce ${pch_output_builddir}
instead of ${pch_output}.
(install-pch rule): Install ${pch_output_builddir}.
* include/Makefile.in: Regenerated.
2003-04-17 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (setp): _M_out_lim, being
the end limit of used put area, is set equal to _M_out_beg.
2003-04-16 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_CHECK_PCH): New.
* aclocal.m4: Regenerated.
* configure.in: Remove old demangler bits.
Call pch checks.
* configure: Regenerate.
* config.h.in: Regenerate.
* include/Makefile.am (allstamps): Now allstamped.
(allcreated): Define this.
(all-local): Use 'em.
Conditionally define pch_build, pch_install based on
GLIBCPP_BUILD_PCH.
(${pch_output}): New rule.
(install-pch): New rule.
(install-headers): New rule.
(install-data-local): Install headers and conditionally pch.
* include/Makefile.in: Regenerate.
* testsuite_flags.in (--build-cxx): Use pch file.
2003-04-16 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/ext/sgiexts.html: Fix path to stylesheet.
2003-04-15 Benjamin Kosnik <bkoz at redhat dot com>
Paolo Carlini <pcarlini at unitus dot it>
PR libstdc++/9423
* docs/html/27_io/howto.html
('The buffering is screwing up my program!'): Explain that
opening counts as an I/O operation.
2003-04-15 Andreas Tobler <a.tobler@schweiz.ch>
* testsuite/thread/pthread1.cc: Enable for darwin test.
* testsuite/thread/pthread2.cc: Same.
* testsuite/thread/pthread3.cc: Same.
* testsuite/thread/pthread4.cc: Same.
* testsuite/thread/pthread5.cc: Same.
* testsuite/thread/pthread6.cc: Same.
2003-04-15 Loren J. Rittle <ljrittle@acm.org>
libstdc++/7680
* include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
Populate it with multiple legal ways to obtain the C99 float
transcendentals. Use them instead of direct global reference.
(C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
* docs/html/17_intro/porting.texi
(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
(_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
* config/os/bsd/freebsd/os_defines.h
(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
* testsuite/26_numerics/c_math_dynamic.cc: New file.
2003-04-14 Andreas Tobler <toa@pop.agri.ch>
Benjamin Kosnik <bkoz@redhat.com>
* config/os/generic/ctype_inline.h: Fix.
2003-04-14 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_hooks.h
(__gnu_cxx_test::run_test_wrapped_generic_locale_exception_catcher):
Change to try_named_locale.
* testsuite/testsuite_hooks.cc (__gnu_cxx_test): Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Use
try_named_locale.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/7.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/7.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/7.cc: Same.
* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Same.
* testsuite/22_locale/collate/compare/char/1.cc: Same.
* testsuite/22_locale/collate/compare/char/2.cc: Same.
* testsuite/22_locale/collate/compare/char/3.cc: Same.
* testsuite/22_locale/collate/compare/wchar_t/1.cc: Same.
* testsuite/22_locale/collate/compare/wchar_t/2.cc: Same.
* testsuite/22_locale/collate/compare/wchar_t/3.cc: Same.
* testsuite/22_locale/collate/hash/char/2.cc: Same.
* testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
* testsuite/22_locale/collate/transform/char/2.cc: Same.
* testsuite/22_locale/collate/transform/char/3.cc: Same.
* testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
* testsuite/22_locale/collate/transform/wchar_t/3.cc: Same.
* testsuite/22_locale/collate_byname/1.cc: Same.
* testsuite/22_locale/ctype/is/char/2.cc: Same.
* testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Same.
* testsuite/22_locale/ctype/widen/wchar_t/2.cc: Same.
* testsuite/22_locale/ctype/widen/wchar_t/3.cc: Same.
* testsuite/22_locale/facet/2.cc: Same.
* testsuite/22_locale/locale/cons/2.cc: Same.
* testsuite/22_locale/locale/cons/4.cc: Same.
* testsuite/22_locale/locale/cons/5.cc: Same.
* testsuite/22_locale/locale/cons/7.cc: Same.
* testsuite/22_locale/locale/cons/7222-c.cc: Same.
* testsuite/22_locale/locale/cons/7222-env.cc: Same.
* testsuite/22_locale/locale/global_locale_objects/2.cc: Same.
* testsuite/22_locale/messages/members/char/1.cc: Same.
* testsuite/22_locale/messages/members/char/2.cc: Same.
* testsuite/22_locale/messages/members/char/3.cc: Same.
* testsuite/22_locale/messages_byname/1.cc: Same.
* testsuite/22_locale/money_get/get/char/1.cc: Same.
* testsuite/22_locale/money_get/get/char/2.cc: Same.
* testsuite/22_locale/money_get/get/char/3.cc: Same.
* testsuite/22_locale/money_get/get/char/4.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/1.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/2.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/3.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/4.cc: Same.
* testsuite/22_locale/money_put/put/char/1.cc: Same.
* testsuite/22_locale/money_put/put/char/2.cc: Same.
* testsuite/22_locale/money_put/put/char/3.cc: Same.
* testsuite/22_locale/money_put/put/wchar_t/1.cc: Same.
* testsuite/22_locale/money_put/put/wchar_t/2.cc: Same.
* testsuite/22_locale/money_put/put/wchar_t/3.cc: Same.
* testsuite/22_locale/moneypunct/members/char/2.cc: Same.
* testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Same.
* testsuite/22_locale/moneypunct_byname/1.cc: Same.
* testsuite/22_locale/num_get/get/char/1.cc: Same.
* testsuite/22_locale/num_get/get/char/2.cc: Same.
* testsuite/22_locale/num_get/get/char/3.cc: Same.
* testsuite/22_locale/num_get/get/char/5.cc: Same.
* testsuite/22_locale/num_get/get/char/6.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/1.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/2.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/3.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/5.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/6.cc: Same.
* testsuite/22_locale/num_put/put/char/1.cc: Same.
* testsuite/22_locale/num_put/put/char/2.cc: Same.
* testsuite/22_locale/num_put/put/char/3.cc: Same.
* testsuite/22_locale/num_put/put/char/5.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/1.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/2.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/3.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/5.cc: Same.
* testsuite/22_locale/numpunct/members/char/1.cc: Same.
* testsuite/22_locale/numpunct/members/char/2.cc: Same.
* testsuite/22_locale/numpunct/members/wchar_t/1.cc: Same.
* testsuite/22_locale/numpunct/members/wchar_t/2.cc: Same.
* testsuite/22_locale/numpunct_byname/1.cc: Same.
* testsuite/22_locale/numpunct_byname/2.cc: Same.
* testsuite/22_locale/time_get/date_order/char/1.cc: Same.
* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_date/char/1.cc: Same.
* testsuite/22_locale/time_get/get_date/char/2.cc: Same.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: Same.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: Same.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_time/char/1.cc: Same.
* testsuite/22_locale/time_get/get_time/char/2.cc: Same.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: Same.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: Same.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_year/char/1.cc: Same.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Same.
* testsuite/22_locale/time_put/put/char/1.cc: Same.
* testsuite/22_locale/time_put/put/char/2.cc: Same.
* testsuite/22_locale/time_put/put/char/3.cc: Same.
* testsuite/22_locale/time_put/put/char/4.cc: Same.
* testsuite/22_locale/time_put/put/char/5.cc: Same.
* testsuite/22_locale/time_put/put/char/6.cc: Same.
* testsuite/22_locale/time_put/put/char/7.cc: Same.
* testsuite/22_locale/time_put/put/char/8.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/1.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/2.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/3.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/4.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/5.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/6.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/7.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/8.cc: Same.
* testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Same.
* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: Same.
* testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Same.
* testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Same.
2003-04-14 Andreas Tobler <toa@pop.agri.ch>
* configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
solaris includes, not generic.
2003-04-14 Loren J. Rittle <ljrittle@acm.org>
* testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
* include/std/std_bitset.h (_M_do_find_next): Fix -Wall nit.
* include/bits/concept_check.h: Fix multi-line comment.
* testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
when target is *-*-freebsd*.
2003-04-14 Nathan Myers <ncm@cantrip.org>
Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9701 (in_avail())
* include/std/std_streambuf.h (in_avail): Simplify, in_avail
doesn't care if there is anything in some putback cell.
* testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Add.
* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Remove some
unused string literals.
2003-04-14 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (basic_filebuf::setbuf): Don't set
_M_out_end, _M_set_indeterminate() does it.
2003-04-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* os/hpux/ctype_inline.h: Replace with gnu-linux version.
2003-04-12 David Edelsohn <edelsohn@gnu.org>
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
Change basic_streambuf instantiation to "unsigned char".
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
2003-04-12 Paolo Carlini <pcarlini@unitus.it>
Remove _M_buf_size_opt, use directly _M_buf_size instead.
* include/bits/fstream.tcc
(basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
references to _M_buf_size_opt.
* include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
* include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
__bufsize to __in_avail and __size_opt to __buf_size.
* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
* include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
* include/std/std_streambuf.h (~basic_streambuf(),
basic_streambuf()): Likewise, remove _M_buf_size_opt member.
* testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
2003-04-12 Paolo Carlini <pcarlini at unitus dot it>
* include/ext/stdio_filebuf.h
(stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
_M_buf_size_opt == 0 only means "not to use an allocated buffer"
since a stack-based buffer is used for small values of the size_t
parameter.
* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
* testsuite/ext/stdio_filebuf_2.cc: New testfile.
2003-04-12 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9533
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.
2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/locale/cons/3.cc: Split.
* testsuite/22_locale/locale/cons/7222-c.cc: New.
* testsuite/22_locale/locale/cons/7222-env.cc: New.
Check before trying to create a locale from the environment.
* testsuite/27_io/ios_base/state/1.cc (test02): Use "C" locale.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
Adjust includes.
2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/ctype/is/char/3.cc (test03): Use the classic
locale to construct this hybrid locale, not the global locale.
2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Add
instantiation for AIX.
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
* testsuite/25_algorithms/min_max.cc: Same.
2003-04-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* basic_file_stdio.cc (__basic_file<char>::close): Don't flush stream
twice. Always set _M_cfile to 0 when stream was open.
2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
Reshuffle 27_io testsuite.
* testsuite/27_io/filebuf.cc,
filebuf_members-1.tst, filebuf_members-1.txt, filebuf_members.cc,
filebuf_virtuals-1.tst, filebuf_virtuals-1.txt,
filebuf_virtuals-2.tst, filebuf_virtuals-3.tst,
filebuf_virtuals.cc, fpos.cc, fstream.cc, fstream_members.cc,
ifstream.cc, ifstream_members-1.tst, ifstream_members-1.txt,
ifstream_members.cc, instantiations.cc, ios.cc,
ios_base_callbacks.cc, ios_base_members_static-1.tst,
ios_base_members_static.cc, ios_base_storage.cc,
ios_base_types.cc, ios_ctor.cc, ios_init.cc,
ios_manip_basefield.cc, ios_manip_fmtflags.cc, ios_members.cc,
iostream.cc, iostream_members.cc, istream.cc,
istream_exception.cc, istream_extractor_char.cc,
istream_extractor_other-1.tst, istream_extractor_other-1.txt,
istream_extractor_other-2.tst, istream_extractor_other.cc,
istream_manip.cc, istream_seeks-1.tst, istream_seeks-1.txt,
istream_seeks-2.tst, istream_seeks-3.tst, istream_seeks.cc,
istream_sentry.cc, istream_unformatted-1.tst,
istream_unformatted-1.txt, istream_unformatted.cc,
istringstream.cc, istringstream_members.cc,
narrow_stream_objects.cc, ofstream.cc, ofstream_members-1.tst,
ofstream_members.cc, ostream.cc, ostream_exception.cc,
ostream_fail.cc, ostream_inserter_arith.cc,
ostream_inserter_char-1.tst, ostream_inserter_char-1.txt,
ostream_inserter_char.cc, ostream_inserter_other-1.tst,
ostream_inserter_other-2.tst, ostream_inserter_other.cc,
ostream_manip.cc, ostream_seeks-1.tst, ostream_seeks.cc,
ostream_sentry.cc, ostream_unformatted.cc, ostringstream.cc,
ostringstream_members.cc, standard_manipulators.cc, streambuf.cc,
streambuf_members.cc, stringbuf.cc, stringbuf_members.cc,
stringbuf_virtuals.cc, stringstream.cc, stringstream_members.cc,
wide_stream_objects.cc, istream_extractor_arith/01.cc,
istream_extractor_arith/02.cc, istream_extractor_arith/03.cc,
istream_extractor_arith/06.cc, istream_extractor_arith/07.cc,
istream_extractor_arith/08.cc, istream_extractor_arith/09.cc,
istream_extractor_arith/10.cc, istream_extractor_arith/11.cc,
istream_extractor_arith/12.cc, istream_extractor_arith/13.cc:
Split into...
* 27_io/basic_filebuf/1.cc: New.
* 27_io/basic_filebuf/2.cc: New.
* 27_io/basic_filebuf/3.cc: New.
* 27_io/basic_filebuf/4.cc: New.
* 27_io/basic_filebuf/close/char/1.cc: New.
* 27_io/basic_filebuf/close/char/2.cc: New.
* 27_io/basic_filebuf/close/char/3.cc: New.
* 27_io/basic_filebuf/close/char/4879.cc: New.
* 27_io/basic_filebuf/close/char/9964.cc: New.
* 27_io/basic_filebuf/imbue/char/1.cc: New.
* 27_io/basic_filebuf/imbue/char/9322.cc: New.
* 27_io/basic_filebuf/in_avail/char/1.cc: New.
* 27_io/basic_filebuf/is_open/char/1.cc: New.
* 27_io/basic_filebuf/open/char/1.cc: New.
* 27_io/basic_filebuf/open/char/2.cc: New.
* 27_io/basic_filebuf/open/char/3.cc: New.
* 27_io/basic_filebuf/open/char/9507.cc: New.
* 27_io/basic_filebuf/overflow/char/1.cc: New.
* 27_io/basic_filebuf/overflow/char/3599.cc: New.
* 27_io/basic_filebuf/overflow/char/9169.cc: New.
* 27_io/basic_filebuf/overflow/char/9182-2.cc: New.
* 27_io/basic_filebuf/overflow/char/9988.cc: New.
* 27_io/basic_filebuf/sbumpc/char/1.cc: New.
* 27_io/basic_filebuf/sbumpc/char/9825.cc: New.
* 27_io/basic_filebuf/seekoff/char/1.cc: New.
* 27_io/basic_filebuf/seekoff/char/2.cc: New.
* 27_io/basic_filebuf/seekpos/char/1.cc: New.
* 27_io/basic_filebuf/seekpos/char/2.cc: New.
* 27_io/basic_filebuf/setbuf/char/1.cc: New.
* 27_io/basic_filebuf/setbuf/char/2.cc: New.
* 27_io/basic_filebuf/setbuf/char/3.cc: New.
* 27_io/basic_filebuf/sgetc/char/1.cc: New.
* 27_io/basic_filebuf/sgetn/char/1.cc: New.
* 27_io/basic_filebuf/sgetn/char/2.cc: New.
* 27_io/basic_filebuf/snextc/char/1.cc: New.
* 27_io/basic_filebuf/sputbackc/char/1.cc: New.
* 27_io/basic_filebuf/sputbackc/char/9425.cc: New.
* 27_io/basic_filebuf/sputc/char/1.cc: New.
* 27_io/basic_filebuf/sputc/char/1057.cc: New.
* 27_io/basic_filebuf/sputc/char/9701-2.cc: New.
* 27_io/basic_filebuf/sputn/char/1.cc: New.
* 27_io/basic_filebuf/sputn/char/1057.cc: New.
* 27_io/basic_filebuf/sputn/char/9701-1.cc: New.
* 27_io/basic_filebuf/sungetc/char/1.cc: New.
* 27_io/basic_filebuf/sync/char/1057.cc: New.
* 27_io/basic_filebuf/sync/char/9182-1.cc: New.
* 27_io/basic_filebuf/underflow/char/10097.cc: New.
* 27_io/basic_fstream/1.cc: New.
* 27_io/basic_fstream/2.cc: New.
* 27_io/basic_fstream/3.cc: New.
* 27_io/basic_fstream/4.cc: New.
* 27_io/basic_fstream/rdbuf/char/2832.cc: New.
* 27_io/basic_ifstream/1.cc: New.
* 27_io/basic_ifstream/2.cc: New.
* 27_io/basic_ifstream/3.cc: New.
* 27_io/basic_ifstream/4.cc: New.
* 27_io/basic_ifstream/cons/char/1.cc: New.
* 27_io/basic_ifstream/open/char/1.cc: New.
* 27_io/basic_ifstream/rdbuf/char/2832.cc: New.
* 27_io/basic_ios/1.cc: New.
* 27_io/basic_ios/2.cc: New.
* 27_io/basic_ios/3.cc: New.
* 27_io/basic_ios/4.cc: New.
* 27_io/basic_ios/clear/char/1.cc: New.
* 27_io/basic_ios/cons/char/1.cc: New.
* 27_io/basic_ios/cons/char/2.cc: New.
* 27_io/basic_ios/cons/char/3.cc: New.
* 27_io/basic_ios/copyfmt/char/1.cc: New.
* 27_io/basic_ios/copyfmt/char/2.cc: New.
* 27_io/basic_ios/exceptions/char/1.cc: New.
* 27_io/basic_ios/locales/char/1.cc: New.
* 27_io/basic_iostream/1.cc: New.
* 27_io/basic_iostream/2.cc: New.
* 27_io/basic_iostream/3.cc: New.
* 27_io/basic_iostream/4.cc: New.
* 27_io/basic_istream/1.cc: New.
* 27_io/basic_istream/2.cc: New.
* 27_io/basic_istream/3.cc: New.
* 27_io/basic_istream/4.cc: New.
* 27_io/basic_istream/exceptions/char/9561.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/01.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/02.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/03.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/06.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/07.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/08.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/09.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/10.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/11.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/12.cc: New.
* 27_io/basic_istream/extractors_arithmetic/char/13.cc: New.
* 27_io/basic_istream/extractors_character/char/1.cc: New.
* 27_io/basic_istream/extractors_character/char/2.cc: New.
* 27_io/basic_istream/extractors_character/char/3.cc: New.
* 27_io/basic_istream/extractors_character/char/9826.cc: New.
* 27_io/basic_istream/extractors_other/char/1.cc: New.
* 27_io/basic_istream/extractors_other/char/2.cc: New.
* 27_io/basic_istream/extractors_other/char/3.cc: New.
* 27_io/basic_istream/extractors_other/char/9318-in.cc: New.
* 27_io/basic_istream/extractors_other/char/9424-in.cc: New.
* 27_io/basic_istream/get/char/1.cc: New.
* 27_io/basic_istream/get/char/2.cc: New.
* 27_io/basic_istream/getline/char/1.cc: New.
* 27_io/basic_istream/getline/char/2.cc: New.
* 27_io/basic_istream/getline/char/3.cc: New.
* 27_io/basic_istream/ignore/char/1.cc: New.
* 27_io/basic_istream/ignore/char/6360.cc: New.
* 27_io/basic_istream/ignore/char/7220.cc: New.
* 27_io/basic_istream/peek/char/1.cc: New.
* 27_io/basic_istream/peek/char/6414.cc: New.
* 27_io/basic_istream/putback/char/1.cc: New.
* 27_io/basic_istream/read/char/1.cc: New.
* 27_io/basic_istream/read/char/2.cc: New.
* 27_io/basic_istream/read/char/3.cc: New.
* 27_io/basic_istream/readsome/char/6746-1.cc: New.
* 27_io/basic_istream/readsome/char/6746-2.cc: New.
* 27_io/basic_istream/readsome/char/8258.cc: New.
* 27_io/basic_istream/seekg/char/2346-fstream.cc: New.
* 27_io/basic_istream/seekg/char/2346-sstream.cc: New.
* 27_io/basic_istream/seekg/char/8348-1.cc: New.
* 27_io/basic_istream/seekg/char/8348-2.cc: New.
* 27_io/basic_istream/seekg/char/fstream.cc: New.
* 27_io/basic_istream/seekg/char/sstream.cc: New.
* 27_io/basic_istream/sentry/char/1.cc: New.
* 27_io/basic_istream/sentry/char/2.cc: New.
* 27_io/basic_istream/sentry/char/3.cc: New.
* 27_io/basic_istream/sentry/char/3983-fstream.cc: New.
* 27_io/basic_istream/sentry/char/3983-sstream.cc: New.
* 27_io/basic_istream/tellg/char/1.cc: New.
* 27_io/basic_istream/tellg/char/8348.cc: New.
* 27_io/basic_istream/tellg/char/fstream.cc: New.
* 27_io/basic_istream/tellg/char/sstream.cc: New.
* 27_io/basic_istream/ws/char/1.cc: New.
* 27_io/basic_istringstream/1.cc: New.
* 27_io/basic_istringstream/2.cc: New.
* 27_io/basic_istringstream/3.cc: New.
* 27_io/basic_istringstream/4.cc: New.
* 27_io/basic_istringstream/rdbuf/char/2832.cc: New.
* 27_io/basic_istringstream/str/char/1.cc: New.
* 27_io/basic_ofstream/1.cc: New.
* 27_io/basic_ofstream/2.cc: New.
* 27_io/basic_ofstream/3.cc: New.
* 27_io/basic_ofstream/4.cc: New.
* 27_io/basic_ofstream/cons/char/2.cc: New.
* 27_io/basic_ofstream/open/char/1.cc: New.
* 27_io/basic_ofstream/rdbuf/char/2832.cc: New.
* 27_io/basic_ostream/1.cc: New.
* 27_io/basic_ostream/2.cc: New.
* 27_io/basic_ostream/3.cc: New.
* 27_io/basic_ostream/4.cc: New.
* 27_io/basic_ostream/cons/char/9827.cc: New.
* 27_io/basic_ostream/endl/char/1.cc: New.
* 27_io/basic_ostream/ends/char/1.cc: New.
* 27_io/basic_ostream/ends/char/2.cc: New.
* 27_io/basic_ostream/exceptions/char/9561.cc: New.
* 27_io/basic_ostream/flush/char/1.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/char/1.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/char/2.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/char/3.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/char/4.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/char/4402.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/char/5.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/char/6.cc: New.
* 27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: New.
* 27_io/basic_ostream/inserters_character/char/1.cc: New.
* 27_io/basic_ostream/inserters_character/char/2.cc: New.
* 27_io/basic_ostream/inserters_character/char/3.cc: New.
* 27_io/basic_ostream/inserters_character/char/4.cc: New.
* 27_io/basic_ostream/inserters_character/char/5.cc: New.
* 27_io/basic_ostream/inserters_character/char/6.cc: New.
* 27_io/basic_ostream/inserters_character/char/8.cc: New.
* 27_io/basic_ostream/inserters_character/wchar_t/7.cc: New.
* 27_io/basic_ostream/inserters_character/wchar_t/8.cc: New.
* 27_io/basic_ostream/inserters_other/char/1.cc: New.
* 27_io/basic_ostream/inserters_other/char/2.cc: New.
* 27_io/basic_ostream/inserters_other/char/3.cc: New.
* 27_io/basic_ostream/inserters_other/char/4.cc: New.
* 27_io/basic_ostream/inserters_other/char/9318-out.cc: New.
* 27_io/basic_ostream/inserters_other/char/9424-out.cc: New.
* 27_io/basic_ostream/sentry/char/1.cc: New.
* 27_io/basic_ostream/sentry/char/2.cc: New.
* 27_io/basic_ostream/sentry/char/3983-fstream.cc: New.
* 27_io/basic_ostream/sentry/char/3983-sstream.cc: New.
* 27_io/basic_ostream/tellp/char/1.cc: New.
* 27_io/basic_ostream/tellp/char/2.cc: New.
* 27_io/basic_ostringstream/1.cc: New.
* 27_io/basic_ostringstream/2.cc: New.
* 27_io/basic_ostringstream/3.cc: New.
* 27_io/basic_ostringstream/4.cc: New.
* 27_io/basic_ostringstream/cons/char/3.cc: New.
* 27_io/basic_ostringstream/rdbuf/char/2832.cc: New.
* 27_io/basic_ostringstream/str/char/1.cc: New.
* 27_io/basic_ostringstream/str/char/2.cc: New.
* 27_io/basic_streambuf/1.cc: New.
* 27_io/basic_streambuf/2.cc: New.
* 27_io/basic_streambuf/3.cc: New.
* 27_io/basic_streambuf/cons/char/1.cc: New.
* 27_io/basic_streambuf/imbue/char/1.cc: New.
* 27_io/basic_streambuf/imbue/char/9322.cc: New.
* 27_io/basic_streambuf/overflow/char/1.cc: New.
* 27_io/basic_streambuf/overflow/char/2.cc: New.
* 27_io/basic_streambuf/overflow/char/3599.cc: New.
* 27_io/basic_streambuf/sgetc/char/1.cc: New.
* 27_io/basic_streambuf/sgetn/char/1.cc: New.
* 27_io/basic_streambuf/sputbackc/char/9538.cc: New.
* 27_io/basic_streambuf/sputc/char/1057.cc: New.
* 27_io/basic_streambuf/sputn/char/1.cc: New.
* 27_io/basic_streambuf/sputn/char/1057.cc: New.
* 27_io/basic_streambuf/sync/char/1057.cc: New.
* 27_io/basic_stringbuf/1.cc: New.
* 27_io/basic_stringbuf/2.cc: New.
* 27_io/basic_stringbuf/3.cc: New.
* 27_io/basic_stringbuf/4.cc: New.
* 27_io/basic_stringbuf/5.cc: New.
* 27_io/basic_stringbuf/imbue/char/1.cc: New.
* 27_io/basic_stringbuf/imbue/char/9322.cc: New.
* 27_io/basic_stringbuf/in_avail/char/1.cc: New.
* 27_io/basic_stringbuf/overflow/char/2.cc: New.
* 27_io/basic_stringbuf/overflow/char/3599.cc: New.
* 27_io/basic_stringbuf/overflow/char/9988.cc: New.
* 27_io/basic_stringbuf/sbumpc/char/1.cc: New.
* 27_io/basic_stringbuf/sbumpc/char/9825.cc: New.
* 27_io/basic_stringbuf/seekoff/char/1.cc: New.
* 27_io/basic_stringbuf/seekoff/char/2.cc: New.
* 27_io/basic_stringbuf/seekpos/char/1.cc: New.
* 27_io/basic_stringbuf/seekpos/char/2.cc: New.
* 27_io/basic_stringbuf/setbuf/char/1.cc: New.
* 27_io/basic_stringbuf/setbuf/char/2.cc: New.
* 27_io/basic_stringbuf/setbuf/char/3.cc: New.
* 27_io/basic_stringbuf/sgetc/char/1.cc: New.
* 27_io/basic_stringbuf/sgetn/char/1.cc: New.
* 27_io/basic_stringbuf/snextc/char/1.cc: New.
* 27_io/basic_stringbuf/sputbackc/char/1.cc: New.
* 27_io/basic_stringbuf/sputbackc/char/9425.cc: New.
* 27_io/basic_stringbuf/sputc/char/1.cc: New.
* 27_io/basic_stringbuf/sputc/char/1057.cc: New.
* 27_io/basic_stringbuf/sputc/char/9404-1.cc: New.
* 27_io/basic_stringbuf/sputn/char/1.cc: New.
* 27_io/basic_stringbuf/sputn/char/1057.cc: New.
* 27_io/basic_stringbuf/sputn/char/9404-2.cc: New.
* 27_io/basic_stringbuf/str/char/1.cc: New.
* 27_io/basic_stringbuf/str/char/2.cc: New.
* 27_io/basic_stringbuf/str/char/3.cc: New.
* 27_io/basic_stringbuf/str/char/3955.cc: New.
* 27_io/basic_stringbuf/sungetc/char/1.cc: New.
* 27_io/basic_stringbuf/sync/char/1057.cc: New.
* 27_io/basic_stringstream/1.cc: New.
* 27_io/basic_stringstream/2.cc: New.
* 27_io/basic_stringstream/3.cc: New.
* 27_io/basic_stringstream/4.cc: New.
* 27_io/basic_stringstream/rdbuf/char/2832.cc: New.
* 27_io/basic_stringstream/str/char/1.cc: New.
* 27_io/basic_stringstream/str/char/2.cc: New.
* 27_io/basic_stringstream/str/char/3.cc: New.
* 27_io/basic_stringstream/str/char/4.cc: New.
* 27_io/fpos/1.cc: New.
* 27_io/fpos/2.cc: New.
* 27_io/fpos/3.cc: New.
* 27_io/ios_base/callbacks/1.cc: New.
* 27_io/ios_base/state/1.cc: New.
* 27_io/ios_base/storage/1.cc: New.
* 27_io/ios_base/storage/2.cc: New.
* 27_io/ios_base/storage/3.cc: New.
* 27_io/ios_base/sync_with_stdio/1.cc: New.
* 27_io/ios_base/sync_with_stdio/2.cc: New.
* 27_io/manipulators/adjustfield/char/1.cc: New.
* 27_io/manipulators/adjustfield/char/2.cc: New.
* 27_io/manipulators/basefield/char/1.cc: New.
* 27_io/manipulators/standard/char/1.cc: New.
* 27_io/manipulators/standard/char/2.cc: New.
* 27_io/objects/char/1.cc: New.
* 27_io/objects/char/2.cc: New.
* 27_io/objects/char/2523-1_xin.cc: New.
* 27_io/objects/char/2523-1_xin.in: New.
* 27_io/objects/char/2523-2_xin.cc: New.
* 27_io/objects/char/2523-2_xin.in: New.
* 27_io/objects/char/3045.cc: New.
* 27_io/objects/char/3647.cc: New.
* 27_io/objects/char/3_xin.cc: New.
* 27_io/objects/char/3_xin.in: New.
* 27_io/objects/char/4_xin.cc: New.
* 27_io/objects/char/4_xin.in: New.
* 27_io/objects/char/5268.cc: New.
* 27_io/objects/char/5280_xin.cc: New.
* 27_io/objects/char/5280_xin.in: New.
* 27_io/objects/char/6548_xin.cc: New.
* 27_io/objects/char/6548_xin.in: New.
* 27_io/objects/char/6648-1_xin.cc: New.
* 27_io/objects/char/6648-1_xin.in: New.
* 27_io/objects/char/6648-2_xin.cc: New.
* 27_io/objects/char/6648-2_xin.in: New.
* 27_io/objects/char/7744_xin.cc: New.
* 27_io/objects/char/7744_xin.in: New.
* 27_io/objects/wchar_t/1.cc: New.
* 27_io/types/1.cc: New.
* 27_io/types/2.cc: New.
* data/filebuf_members-1.tst: New.
* data/filebuf_members-1.txt: New.
* data/filebuf_virtuals-1.tst: New.
* data/filebuf_virtuals-1.txt: New.
* data/filebuf_virtuals-2.tst: New.
* data/filebuf_virtuals-3.tst: New.
* data/ifstream_members-1.tst: New.
* data/ifstream_members-1.txt: New.
* data/ios_base_members_static-1.tst: New.
* data/istream_extractor_other-1.tst: New.
* data/istream_extractor_other-1.txt: New.
* data/istream_extractor_other-2.tst: New.
* data/istream_seeks-1.tst: New.
* data/istream_seeks-1.txt: New.
* data/istream_seeks-2.tst: New.
* data/istream_seeks-3.tst: New.
* data/istream_unformatted-1.tst: New.
* data/istream_unformatted-1.txt: New.
* data/ofstream_members-1.tst: New.
* data/ostream_inserter_char-1.tst: New.
* data/ostream_inserter_char-1.txt: New.
* data/ostream_inserter_other-1.tst: New.
* data/ostream_inserter_other-2.tst: New.
* data/ostream_seeks-1.tst: New.
2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/sstream.tcc (basic_stringbuf::seekpos): Remove
requirement that __mode must be strict input or output.
* include/std/std_streambuf.h (basic_streambuf::setp): Set
_M_out_lim.
* include/std/std_sstream.h (basic_strinbuf::str): Zero length
output string shouldn't core.
(basic_stringbuf::_M_really_sync): Add base argument. Remove rturn
type.
* include/bits/sstream.tcc: Adjust _M_really_sync bits here.
* include/bits/istream.tcc (basic_istream::putback): Set gcount to
zero.
2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/data: New directory.
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
to copy files from the testsuite data directory.
(libstdc++-v3-list-sourcefiles): Add another test list filter, for
testfiles containing _xin, which now means this is an interactive
test and should be run with the interactive dejagnu hooks.
* testsuite/Makefile.am: Remove testsuite_* files.
* testsuite/Makefile.in: Regenerate.
2003-04-09 Zack Weinberg <zack@codesourcery.com>
* docs/html/install.html: Document complete list of locales
required by test suite. Document procedure for installing
said locales under Debian. Solicit instructions for other
operating systems.
2003-04-08 Alexandre Oliva <aoliva@redhat.com>
* include/bits/sstream.tcc (overflow): Make sure operands of min
and max have the same type.
2003-04-04 Jerry Quinn <jlquinn@optonline.net>
PR libstdc++/10276
* src/ios.cc (ios_base::_M_init): Remove _M_callbacks
initialization.
2003-03-31 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (_M_out_buf_size()): Remove.
* include/bits/fstream.tcc (_M_allocate_internal_buffer):
Don't set _M_out_end.
(basic_filebuf::overflow): Replace _M_out_buf_size() with
this->_M_out_cur && this->_M_out_cur < this->_M_out_end.
* include/bits/sstream.tcc (basic_stringbuf::overflow):
Replace _M_out_buf_size() with this->_M_out_cur < this->_M_out_end;
* include/bits/streambuf.tcc (basic_streambuf::sputc):
Replace _M_out_buf_size() with _M_out_cur && _M_out_cur < _M_out_end.
(basic_streambuf::xsputn): Replace _M_out_buf_size() with
_M_out_end - _M_out_cur.
(__copy_streambufs): Likewise.
* include/std/std_fstream.h (_M_set_determinate): Set
_M_out_end here.
2003-03-30 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (basic_filebuf::showmanyc,
_M_convert_to_external, _M_really_overflow, seekoff): Fix
test for synced buffer.
* include/std/std_fstream.h (sync): Likewise.
* src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
basic_filebuf<wchar_t>::_M_underflow_common): Likewise.
2003-03-28 Benjamin Kosnik <bkoz@redhat.com>
* include/std/std_sstream.h (basic_istringstream): Adjust
initialization.
(basic_ostringstream): Same.
(basic_stringstream): Same.
* include/std/std_fstream.h (basic_ifstream): Adjust initialization.
(basic_ofstream): Same.
(basic_fstream): Same.
* include/std/std_ostream.h (basic_ostrem): Add protected ctor
that does not call init.
* include/std/std_istream.h (basic_istream): Same.
(basic_iostream): Construct istream, ostream uninitialized, use
init to initialize just once. Add protected ctor that does not
call init.
2003-03-28 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
PR libstdc++/9533
* include/bits/fstream.tcc (basic_filebuf<>::open): Don't
call underflow().
(basic_filebuf<>::showmanyc): Use the information provided
by codecvt and __basic_file<>::showmanyc_helper to implement
a non-trivial showmanyc.
* config/io/basic_file_stdio.h
(__basic_file<>::showmanyc_helper): New, declare.
* config/io/basic_file_stdio.cc
(__basic_file<>::showmanyc_helper): Define.
(__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
(__basic_file<char>::open): Don't call fcntl().
* acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
GLIBCPP_CHECK_POLL): New macros.
* configure.in: Call here.
* acconfig.h: Add #undefs for the corresponding symbols.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.h.in: Regenerate.
2003-03-24 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Remove string export restrictions.
2003-03-24 Paolo Carlini <pcarlini@unitus.it>
* testsuite/21_strings/basic_string/find/char/1.cc: Remove
find_first_of, find_last_of and find_last_not_of tests.
* testsuite/21_strings/basic_string/find/char/2.cc: find_first_of
tests here, new file.
* testsuite/21_strings/basic_string/find/wchar_t/1.cc: Likewise,
remove wchar_t find_first_of, find_last_of and find_last_not_of tests.
* testsuite/21_strings/basic_string/find/wchar_t/2.cc: Likewise,
wchar_t find_first_of tests here, new file.
* testsuite/21_strings/basic_string/rfind/char/2.cc: find_last_of
tests here.
* testsuite/21_strings/basic_string/rfind/char/3.cc: find_last_not_of
tests here.
* testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: likewise,
wchar_t find_last_of tests here.
* testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: likewise,
wchar_t find_last_not_of tests here.
2003-03-22 Loren J. Rittle <ljrittle@acm.org>
* config/os/hpux/ctype_noninline.h (ctype<char>::classic_table):
Correct return value.
2003-03-21 Jerry Quinn <jlquinn@optonline.net>
PR libstdc++/5730
* include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
* include/std/std_complex.h (norm): Use faster,
less accurate computation for builtin float types under --fast-math.
2003-03-21 Magnus Fromreide <gnats@magfr.user.lysator.liu.se>
* testsuite/testsuite_hooks.h: Fix warning nits.
2003-03-19 Alexandre Oliva <aoliva@redhat.com>
* config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add):
Only .set mips2 for the o32 ABI.
2003-03-19 Paolo Carlini <pcarlini@unitus.it>
* testsuite/21_strings/char_traits/requirements/char/1.cc:
Test char not wchar_t.
2003-03-18 Paolo Carlini <pcarlini@unitus.it>
* testsuite/21_strings/basic_string/append/wchar_t/1.cc:
Correct size, taking into account sizeof(wchar_t).
2003-03-18 Paolo Carlini <pcarlini@unitus.it>
Reshuffle 21_strings testsuite.
* testsuite/21_strings/append.cc, c_strings.cc, invariants.cc,
assign.cc, ctor_copy_dtor.cc, nonmember.cc, capacity.cc,
element_access.cc, operations.cc, char_traits_requirements.cc,
find.cc, replace.cc, char_traits_typedefs.cc, insert.cc, rfind.cc,
compare.cc, inserters_extractors.cc, substr.cc: Split up, add
wchar_t tests as follows.
* 21_strings/basic_string/append/char/1.cc: New.
* 21_strings/basic_string/append/wchar_t/1.cc: New.
* 21_strings/basic_string/assign/char/1.cc: New.
* 21_strings/basic_string/assign/char/2.cc: New.
* 21_strings/basic_string/assign/char/3.cc: New.
* 21_strings/basic_string/assign/wchar_t/1.cc: New.
* 21_strings/basic_string/assign/wchar_t/2.cc: New.
* 21_strings/basic_string/assign/wchar_t/3.cc: New.
* 21_strings/basic_string/capacity/1.cc: New.
* 21_strings/basic_string/capacity/char/1.cc: New.
* 21_strings/basic_string/capacity/char/2.cc: New.
* 21_strings/basic_string/capacity/wchar_t/1.cc: New.
* 21_strings/basic_string/capacity/wchar_t/2.cc: New.
* 21_strings/basic_string/compare/char/1.cc: New.
* 21_strings/basic_string/compare/wchar_t/1.cc: New.
* 21_strings/basic_string/cons/char/1.cc: New.
* 21_strings/basic_string/cons/char/2.cc: New.
* 21_strings/basic_string/cons/char/3.cc: New.
* 21_strings/basic_string/cons/char/4.cc: New.
* 21_strings/basic_string/cons/char/5.cc: New.
* 21_strings/basic_string/cons/wchar_t/1.cc: New.
* 21_strings/basic_string/cons/wchar_t/2.cc: New.
* 21_strings/basic_string/cons/wchar_t/3.cc: New.
* 21_strings/basic_string/cons/wchar_t/4.cc: New.
* 21_strings/basic_string/cons/wchar_t/5.cc: New.
* 21_strings/basic_string/element_access/char/1.cc: New.
* 21_strings/basic_string/element_access/char/2.cc: New.
* 21_strings/basic_string/element_access/char/3.cc: New.
* 21_strings/basic_string/element_access/wchar_t/1.cc: New.
* 21_strings/basic_string/element_access/wchar_t/2.cc: New.
* 21_strings/basic_string/element_access/wchar_t/3.cc: New.
* 21_strings/basic_string/find/char/1.cc: New.
* 21_strings/basic_string/find/wchar_t/1.cc: New.
* 21_strings/basic_string/insert/char/1.cc: New.
* 21_strings/basic_string/insert/char/2.cc: New.
* 21_strings/basic_string/insert/wchar_t/1.cc: New.
* 21_strings/basic_string/insert/wchar_t/2.cc: New.
* 21_strings/basic_string/inserters_extractors/char/1.cc: New.
* 21_strings/basic_string/inserters_extractors/char/4.cc: New.
* 21_strings/basic_string/inserters_extractors/char/5.cc: New.
* 21_strings/basic_string/inserters_extractors/char/6.cc: New.
* 21_strings/basic_string/inserters_extractors/char/7.cc: New.
* 21_strings/basic_string/inserters_extractors/char/8.cc: New.
* 21_strings/basic_string/inserters_extractors/char/9.cc: New.
* 21_strings/basic_string/inserters_extractors/wchar_t/1.cc: New.
* 21_strings/basic_string/inserters_extractors/wchar_t/4.cc: New.
* 21_strings/basic_string/inserters_extractors/wchar_t/5.cc: New.
* 21_strings/basic_string/inserters_extractors/wchar_t/6.cc: New.
* 21_strings/basic_string/inserters_extractors/wchar_t/7.cc: New.
* 21_strings/basic_string/inserters_extractors/wchar_t/8.cc: New.
* 21_strings/basic_string/inserters_extractors/wchar_t/9.cc: New.
* 21_strings/basic_string/operators/char/1.cc: New.
* 21_strings/basic_string/operators/char/2.cc: New.
* 21_strings/basic_string/operators/wchar_t/1.cc: New.
* 21_strings/basic_string/operators/wchar_t/2.cc: New.
* 21_strings/basic_string/replace/char/1.cc: New.
* 21_strings/basic_string/replace/char/2.cc: New.
* 21_strings/basic_string/replace/char/3.cc: New.
* 21_strings/basic_string/replace/char/4.cc: New.
* 21_strings/basic_string/replace/char/5.cc: New.
* 21_strings/basic_string/replace/wchar_t/1.cc: New.
* 21_strings/basic_string/replace/wchar_t/2.cc: New.
* 21_strings/basic_string/replace/wchar_t/3.cc: New.
* 21_strings/basic_string/replace/wchar_t/4.cc: New.
* 21_strings/basic_string/replace/wchar_t/5.cc: New.
* 21_strings/basic_string/rfind/char/1.cc: New.
* 21_strings/basic_string/rfind/char/2.cc: New.
* 21_strings/basic_string/rfind/char/3.cc: New.
* 21_strings/basic_string/rfind/wchar_t/1.cc: New.
* 21_strings/basic_string/rfind/wchar_t/2.cc: New.
* 21_strings/basic_string/rfind/wchar_t/3.cc: New.
* 21_strings/basic_string/substr/char/1.cc: New.
* 21_strings/basic_string/substr/wchar_t/1.cc: New.
* 21_strings/c_strings/char/1.cc: New.
* 21_strings/c_strings/char/2.cc: New.
* 21_strings/c_strings/wchar_t/1.cc: New.
* 21_strings/c_strings/wchar_t/2.cc: New.
* 21_strings/char_traits/requirements/char/1.cc: New.
* 21_strings/char_traits/requirements/wchar_t/1.cc: New.
* 21_strings/char_traits/typedefs/char/1.cc: New.
2003-03-17 Paolo Carlini <pcarlini@unitus.it>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/10097
* src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
basic_filebuf<wchar_t>::_M_underflow_common):
if (gptr() < egptr()) return *gptr().
* testsuite/27_io/filebuf_virtuals.cc (test16): Add.
* testsuite/27_io/filebuf_members.cc (test_04): Minor
changes: unlink fifo before making it, fix spelling error.
2003-03-17 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/Makefile.am (CLEANFILES): Add tmp*.
* testsuite/Makefile.in: Regenerate.
* testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
Cleanups.
2003-03-17 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9964
* include/bits/fstream.tcc (basic_filebuf::close):
Always close file, even when write fails.
* testsuite/27_io/filebuf_members.cc (test_07): New test.
2003-03-17 Danny Smith <dannysmith@users.sourceforge.net>
* libsupc++/Makefile.am (C_COMPILE): Remove.
(LTCOMPILE): Likewise.
* libsupc++/Makefile.in: Regenerate.
2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/23_containers/bitset_members.cc: Add test variable.
* testsuite/23_containers/map_insert.cc: Same.
* testsuite/22_locale/ctype/cons/char/1.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
* testsuite/27_io/istream_exception.cc: Same.
* testsuite/27_io/filebuf_virtuals.cc: Same.
* testsuite/27_io/stringbuf_virtuals.cc: Same.
* testsuite/27_io/ostream_inserter_arith.cc: Same.
* testsuite/26_numerics/valarray_operators.cc: Same.
* testsuite/26_numerics/slice.cc: Same.
* testsuite/26_numerics/slice_array_assignment.cc: Same.
* testsuite/24_iterators/istream_iterator.cc: Same.
* mkcheck.in (TESTS_FILE): Use dejagnu-generated file if possible.
2003-03-14 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9581
PR libstdc++/9870
* config/locale/generic/ctype_members.cc,
* config/locale/gnu/ctype_members.cc
(ctype<wchar_t>::do_widen(char)): Cast argument to
unsigned char before passing to btowc.
(ctype<wchar_t>::do_widen(const char*, const char*, wchar_t*)):
Convert characters with btowc instead of mbsrtowcs.
(ctype<wchar_t>::do_narrow(const wchar_t*, const wchar_t*,
char, char*):
Convert characters with wctob instead of wcsrtombs.
* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: New test.
* testsuite/22_locale/ctype/widen/wchar_t/2.cc: New test.
* testsuite/22_locale/ctype/widen/wchar_t/3.cc: New test.
2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
* include/stdc++.h: New.
* libsupc++/exception_defines.h (__EXCEPTION_DEFINES_H): Add guard.
* include/Makefile.am (stamp-std-precompile): Generate stdc++.h.gch
* include/Makefile.in: Regenerate.
* testsuite_flags.in (--build-cxx): Add, but don't use PCHFLAGS.
(--cxxflags): Put -g -O2 here.
* testsuite/libstdc++-v3.dg/dg.exp: Remove -g -O2 here.
2003-03-14 Loren J. Rittle <ljrittle@acm.org>
* testsuite/testsuite_hooks.h: Suppress runtime exception thrown by
missing named locale.
2003-03-14 Andreas Schwab <schwab@suse.de>
* configure.in: Only append to makefiles that are newly created to
avoid multiple multi-do/multi-clean rules.
* configure: Rebuilt.
2003-03-13 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/configopts.html, docs/html/documentation.html,
docs/html/explanations.html, docs/html/install.html,
docs/html/19_diagnostics/howto.html, docs/html/faq/index.html: Fix
invalid XHTML and make page header style consistent.
2003-03-12 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/faq/index.html: Explain memory "leaks" due to allocators.
* docs/html/faq/index.txt: Regenerate.
* docs/html/debug.html: Add a bit to allocator text and fix XHTML.
2003-03-12 Andreas Schwab <schwab@suse.de>
* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
glibcpp_toolexeclibdir.
* aclocal.m4, configure: Rebuilt.
2003-03-11 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/faq/index.html: Update text about location of headers.
* docs/html/faq/index.txt: Regenerate.
2003-03-11 Carlo Wood <carlo@alinoe.com>
* include/bits/demangle.h: Prepend accessors of
class qualifier with 'get_' in order to fix warnings
when compiling with -Wshadow.
2003-03-11 Loren J. Rittle <ljrittle@acm.org>
* config/os/bsd/freebsd/ctype_inline.h: Support _M_table
when so installed.
* testsuite/22_locale/ctype/cons/char/1.cc: Fix typo.
* testsuite/testsuite_hooks.h (run_tests_wrapped_env): Do not
report lack of setenv().
2003-03-09 Paolo Carlini <pcarlini@unitus.it>
* config/io/basic_file_stdio.cc: include <unistd.h>.
2003-03-09 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
PR libstdc++/7744
* config/io/basic_file_stdio.h (__basic_file<>::xsgetn, xsputn,
seekoff, seekpos): Add a boolean parameter __stdio.
* config/io/basic_file_stdio.cc (__basic_file<>::xsgetn, xsputn,
seekoff, seekpos): If __stdio == true, use fread (fwrite, fseek/ftell,
fseek/ftell, respectively), otherwise read (write, lseek, lseek,
respectively).
* include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external,
_M_really_overflow, seekoff): Use the boolean parameter in the calls.
* include/std/std_fstream.h (sync): Likewise.
* src/fstream.cc (basic_filebuf<>::_M_underflow_common): Likewise.
* src/ios.cc (ios_base::Init::_S_ios_create(bool)): Revert
libstdc++/8399 commit involving isatty(0).
* acinclude.m4 (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): Remove.
(GLIBCPP_CHECK_UNISTD_SUPPORT): Remove
* configure.in: Remove call.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* testsuite/27_io/narrow_stream_objects.cc (test11): Add.
2003-03-09 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9988
* include/bits/fstream.tcc (overflow): don't write EOF to file.
* testsuite/27_io/filebuf_virtuals.cc (test15): Add.
2003-03-08 Jerry Quinn <jlquinn@optonline.net>
PR libstdc++/9561
* include/bits/basic_ios.h (_M_setstate): New.
* include/bits/ostream.tcc (operator<<): Use it.
* include/bits/istream.tcc (operator>>): Use it.
* include/std/std_ostream.h (operator<<): Make friends.
* include/std/std_istream.h (operator>>): Make friends.
* testsuite/27_io/ostream_exception.cc,
testsuite/27_io/istream_exception.cc: New tests.
2003-03-08 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Fix typo.
2003-03-08 Loren J. Rittle <ljrittle@acm.org>
* testsuite/26_numerics/c99_classification_macros_c.cc: Tweak test.
* config/locale/generic/c_locale.cc
(locale::facet::_S_create_c_locale): Throw runtime exception when
unsupported language is specified.
* testsuite/testsuite_hooks.h
(run_test_wrapped_generic_locale_exception_catcher): New function.
* testsuite/testsuite_hooks.cc (run_tests_wrapped_locale):
Suppress runtime exception thrown by generic implementation.
(run_tests_wrapped_env): Likewise.
(run_test_wrapped_generic_locale_exception_catcher): New function.
* testsuite/22_locale/collate/compare/char/1.cc: New test wrap.
* testsuite/22_locale/collate/compare/char/2.cc: New test wrap.
* testsuite/22_locale/collate/compare/char/3.cc: New test wrap.
* testsuite/22_locale/collate/hash/char/2.cc: New test wrap.
* testsuite/22_locale/collate/transform/char/2.cc: New test wrap.
* testsuite/22_locale/collate/transform/char/3.cc: New test wrap.
* testsuite/22_locale/collate_byname/1.cc: New test wrap.
* testsuite/22_locale/ctype/is/char/2.cc: New test wrap.
* testsuite/22_locale/facet/2.cc: New test wrap.
* testsuite/22_locale/locale/cons/4.cc: New test wrap.
* testsuite/22_locale/locale/cons/5.cc: New test wrap.
* testsuite/22_locale/locale/cons/7.cc: New test wrap.
* testsuite/22_locale/messages/members/char/1.cc: New test wrap.
* testsuite/22_locale/messages/members/char/2.cc: New test wrap.
* testsuite/22_locale/messages/members/char/3.cc: New test wrap.
* testsuite/22_locale/messages_byname/1.cc: New test wrap.
* testsuite/22_locale/money_get/get/char/1.cc: New test wrap.
* testsuite/22_locale/money_get/get/char/2.cc: New test wrap.
* testsuite/22_locale/money_get/get/char/3.cc: New test wrap.
* testsuite/22_locale/money_get/get/char/4.cc: New test wrap.
* testsuite/22_locale/money_put/put/char/1.cc: New test wrap.
* testsuite/22_locale/money_put/put/char/2.cc: New test wrap.
* testsuite/22_locale/money_put/put/char/3.cc: New test wrap.
* testsuite/22_locale/moneypunct/members/char/2.cc: New test wrap.
* testsuite/22_locale/moneypunct_byname/1.cc: New test wrap.
* testsuite/22_locale/num_get/get/char/1.cc: New test wrap.
* testsuite/22_locale/num_get/get/char/2.cc: New test wrap.
* testsuite/22_locale/num_get/get/char/3.cc: New test wrap.
* testsuite/22_locale/num_get/get/char/5.cc: New test wrap.
* testsuite/22_locale/num_get/get/char/6.cc: New test wrap.
* testsuite/22_locale/num_put/put/char/1.cc: New test wrap.
* testsuite/22_locale/num_put/put/char/2.cc: New test wrap.
* testsuite/22_locale/num_put/put/char/3.cc: New test wrap.
* testsuite/22_locale/num_put/put/char/5.cc: New test wrap.
* testsuite/22_locale/numpunct/members/char/1.cc: New test wrap.
* testsuite/22_locale/numpunct/members/char/2.cc: New test wrap.
* testsuite/22_locale/numpunct_byname/1.cc: New test wrap.
* testsuite/22_locale/numpunct_byname/2.cc: New test wrap.
* testsuite/22_locale/time_get/date_order/char/1.cc: New test wrap.
* testsuite/22_locale/time_get/get_date/char/1.cc: New test wrap.
* testsuite/22_locale/time_get/get_date/char/2.cc: New test wrap.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: New test wrap.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: New test wrap.
* testsuite/22_locale/time_get/get_time/char/1.cc: New test wrap.
* testsuite/22_locale/time_get/get_time/char/2.cc: New test wrap.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: New test wrap.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: New test wrap.
* testsuite/22_locale/time_get/get_year/char/1.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/1.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/2.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/3.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/4.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/5.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/6.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/7.cc: New test wrap.
* testsuite/22_locale/time_put/put/char/8.cc: New test wrap.
* testsuite/27_io/filebuf_virtuals.cc: New test wrap.
* testsuite/27_io/ios_members.cc: New test wrap.
* testsuite/27_io/ostream_inserter_arith.cc (test02): Make void.
New test wrap.
* testsuite/27_io/streambuf_members.cc: New test wrap.
* testsuite/27_io/stringbuf_virtuals.cc: New test wrap.
2003-03-08 Paolo Carlini <pcarlini@unitus.it>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9424
* include/bits/streambuf.tcc (__copy_streambufs): Use
sgetn-sputn only when sputn cannot fail, otherwise fall back
to safe snextc-sputc.
* testsuite/27_io/streambuf_members.cc (test11, test12): Add.
2003-03-08 Jerry Quinn <jlquinn@optonline.net>
* include/bits/locale_facets.tcc (num_put::do_put(bool)): Use
locale cache for truename and falsename.
2003-03-08 Jerry Quinn <jlquinn@optonline.net>
* src/ios.cc (ios_base::ios_base): Correct order of _M_word and
_M_word_size initialization.
2003-03-07 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (_M_convert_to_external):
Set __elen to zero if codecvt::out eventually fails.
2003-03-07 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9182
* include/bits/fstream.tcc (_M_really_overflow): Check
for _M_convert_to_external possible failures.
* include/std/std_fstream.h (sync): Check _M_really_overflow
return value and return -1 in case of failure.
* testsuite/27_io/filebuf_virtuals.cc (test13, test14): Add.
2003-03-07 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9826
* include/bits/istream.tcc (operator>>(_CharT*),
operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
* testsuite/27_io/stringstream.cc (test02): Add.
* include/bits/istream.tcc (operator>>(_CharT*)):
Assign a char_type to *__s.
2003-03-07 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9817
* include/bits/locale_facets.tcc
(collate::do_compare, collate::do_transform):
Handle nul characters in input.
* testsuite/22_locale/collate/compare/char/3.cc: New test.
* testsuite/22_locale/collate/compare/wchar_t/3.cc: New test.
* testsuite/22_locale/collate/transform/char/3.cc: New test.
* testsuite/22_locale/collate/transform/wchar_t/3.cc: New test.
2003-03-07 Jerry Quinn <jlquinn@optonline.net>
* include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
sputn fails.
* testsuite/27_io/ostream_fail.cc: New test.
2003-03-07 Matthias Klose <doko@debian.org>
* Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
FLAGS_TO_PASS: Set to AM_MAKEFLAGS
* Makefile.in: Regenerate.
* libsupc++/Makefile.am: Express glibcppinstalldir in terms
of gxx_include_dir.
AM_MAKEFLAGS: Pass gxx_include_dir.
* libsupc++/Makefile.in: Regenerate.
2003-03-06 Jerry Quinn <jlquinn@optonline.net>
* testsuite/27_io/ios_base_storage.cc (test02): Set exception
mask. Test setting small-numbered pword and iword slots. Test
behavior at limit of numeric_limits::max. Check that values are
still good after failures.
2003-03-06 Jerry Quinn <jlquinn@optonline.net>
* src/ios.cc (ios_base::_M_init): Remove _M_word_size.
(ios_base::ios_base): Set _M_word, _M_word_size.
(ios_base::~ios_base): Remove redundant test.
* testsuite/27_io/ios_base_storage.cc (test03): New.
2003-03-04 Alexandre Oliva <aoliva@redhat.com>
* src/strstream.cc, include/bits/basic_string.tcc: Remove
incorrect whitespace added in my previous change.
2003-03-05 Carlo Wood <carlo@alinoe.com>
* include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
_S_initialized() in order to allow debugging libraries to detect
when the std streams are initialized from an overloaded operator
new.
2003-03-05 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/demangle.h: Move to..
* include/bits/demangle.h: ...here.
* src/demangle.cc: Adjust include.
* include/Makefile.am (bits_headers): Add.
* include/Makefile.in: Regenerate.
2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
* src/globals.cc: Clarify comments, remove c_locale_imp_compat.
* config/linker-map.gnu: Filter typeinfo and vtable info.
2003-03-04 Jerry Quinn <jlquinn@optonline.net>
* src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
new failure. Throw exception if badbit and exception mask when ix
>= numeric_limits<int>::max().
2003-03-04 Alexandre Oliva <aoliva@redhat.com>
* src/strstream.cc (strstreambuf::overflow): Make sure operands of
min and max have the same type.
* include/bits/basic_string.tcc (append, rfind, compare): Likewise.
2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (allstamps): Remove stamp-std-precompile.
* include/Makefile.in: Regenerate.
2003-03-03 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/abi_check.cc (report_symbol_info): Add version info.
* config/linker-map.gnu: Hide more stuff.
* include/Makefile.am: Cleanups.
* include/Makefile.in: Regenerate.
2003-02-27 Jerry Quinn <jlquinn@optonline.net>
* config/locale/generic/messages_members.h (messages::messages):
Remove name from unused parameter.
2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
* src/Makefile.am (sources): Add demangle.cc.
(demangle.o): Add.
(demangle.lo): Add.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Remove old __cxa_demangle bits.
* libsupc++/Makefile.in: Regenerate.
* testsuite/testsuite_hooks.h
(__gnu_cxx_test::verify_demangle): New.
* testsuite/testsuite_hooks.cc: Define.
2003-02-27 Carlo Wood <carlo@alinoe.com>
* src/demangle.cc: New.
* libsupc++/demangle.h: New.
2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
Carlo Wood <carlo@alinoe.com>
* testsuite/demangle/abi_examples/01.cc: New.
* testsuite/demangle/abi_examples/02.cc: New.
* testsuite/demangle/abi_examples/03.cc: New.
* testsuite/demangle/abi_examples/04.cc: New.
* testsuite/demangle/abi_examples/05.cc: New.
* testsuite/demangle/abi_examples/06.cc: New.
* testsuite/demangle/abi_examples/07.cc: New.
* testsuite/demangle/abi_examples/08.cc: New.
* testsuite/demangle/abi_examples/09.cc: New.
* testsuite/demangle/abi_examples/10.cc: New.
* testsuite/demangle/abi_examples/11.cc: New.
* testsuite/demangle/abi_examples/12.cc: New.
* testsuite/demangle/abi_examples/13.cc: New.
* testsuite/demangle/abi_examples/14.cc: New.
* testsuite/demangle/abi_examples/15.cc: New.
* testsuite/demangle/abi_examples/16.cc: New.
* testsuite/demangle/abi_examples/17.cc: New.
* testsuite/demangle/abi_examples/18.cc: New.
* testsuite/demangle/abi_examples/19.cc: New.
* testsuite/demangle/abi_examples/20.cc: New.
* testsuite/demangle/abi_examples/21.cc: New.
* testsuite/demangle/abi_examples/22.cc: New.
* testsuite/demangle/abi_examples/23.cc: New.
* testsuite/demangle/abi_examples/24.cc: New.
* testsuite/demangle/abi_examples/25.cc: New.
* testsuite/demangle/abi_examples/26.cc: New.
* testsuite/demangle/abi_text/01.cc: New.
* testsuite/demangle/abi_text/02.cc: New.
* testsuite/demangle/abi_text/03.cc: New.
* testsuite/demangle/abi_text/04.cc: New.
* testsuite/demangle/abi_text/05.cc: New.
* testsuite/demangle/abi_text/06.cc: New.
* testsuite/demangle/abi_text/07.cc: New.
* testsuite/demangle/abi_text/08.cc: New.
* testsuite/demangle/abi_text/09.cc: New.
* testsuite/demangle/abi_text/10.cc: New.
* testsuite/demangle/abi_text/11.cc: New.
* testsuite/demangle/abi_text/12.cc: New.
* testsuite/demangle/abi_text/13.cc: New.
* testsuite/demangle/abi_text/14.cc: New.
* testsuite/demangle/regression/3111-1.cc: New.
* testsuite/demangle/regression/3111-2.cc: New.
* testsuite/demangle/regression/7986-01.cc: New.
* testsuite/demangle/regression/7986-02.cc: New.
* testsuite/demangle/regression/7986-03.cc: New.
* testsuite/demangle/regression/7986-04.cc: New.
* testsuite/demangle/regression/7986-05.cc: New.
* testsuite/demangle/regression/7986-06.cc: New.
* testsuite/demangle/regression/7986-07.cc: New.
* testsuite/demangle/regression/7986-08.cc: New.
* testsuite/demangle/regression/7986-09.cc: New.
* testsuite/demangle/regression/7986-10.cc: New.
* testsuite/demangle/regression/7986-11.cc: New.
* testsuite/demangle/regression/7986-12.cc: New.
* testsuite/demangle/regression/7986.cc: New.
* testsuite/demangle/regression/8897.cc: New.
* testsuite/demangle/regression/cw-01.cc: New.
* testsuite/demangle/regression/cw-02.cc: New.
* testsuite/demangle/regression/cw-03.cc: New.
* testsuite/demangle/regression/cw-04.cc: New.
* testsuite/demangle/regression/cw-05.cc: New.
* testsuite/demangle/regression/cw-06.cc: New.
* testsuite/demangle/regression/cw-07.cc: New.
* testsuite/demangle/regression/cw-08.cc: New.
* testsuite/demangle/regression/cw-09.cc: New.
* testsuite/demangle/regression/cw-10.cc: New.
* testsuite/demangle/regression/cw-11.cc: New.
* testsuite/demangle/regression/cw-12.cc: New.
* testsuite/demangle/regression/cw-13.cc: New.
* testsuite/demangle/regression/cw-14.cc: New.
* testsuite/demangle/regression/old.cc: New.
2003-02-25 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/Intro.3: Update with new (proper) names.
* docs/doxygen/TODO: Update.
* docs/doxygen/run_doxygen: More comments, fix up man pages.
Fake entries for standard typedefs.
* docs/doxygen/user.cfg.in: Turn INLINE_INHERITED_MEMB back on.
* docs/html/documentation.html: Top-level man page is now called
C++Intro.
* include/std/std_limits.h: Doxygenate.
2003-02-25 Scott Snyder <snyder@fnal.gov>
PR libstdc++/9811
* include/bits/stl_map.h (lower_bound, upper_bound, equal_range):
Correct documentation.
* include/bits/stl_multimap.h (lower_bound, upper_bound,
equal_range): Likewise.
2003-02-24 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9825
* src/fstream.cc
(basic_filebuf<char/wchar_t>::_M_underflow_common): When
__bump is true (uflow), always increment the read pointer
(_M_in_cur) before returning successfully.
* testsuite/27_io/filebuf_virtuals.cc (test12): Add.
2003-02-24 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
PR libstdc++/9404, PR libstdc++/9701 (partial)
(aka pptr == epptr implies overflow)
* include/bits/fstream.tcc (_M_allocate_internal_buffer):
Consistently, _M_out_end points to the end of the buffer just
created.
(overflow): Tweak to use _M_out_buf_size().
(_M_convert_to_external): The role of the old _M_out_end is
now played by _M_out_lim.
(_M_really_overflow): Likewise.
(seekoff): Likewise.
(setbuf): _M_out_end points to the end of the external buffer.
* include/bits/sstream.tcc (overflow): Rewrote, taking into
account the resolution of DR 169 (TC).
(seekoff): Use _M_string.capacity(); ios_base::end is now _M_out_lim.
(seekpos): Use _M_string.capacity(); tweak.
* include/bits/streambuf.tcc (sputc, xsputn): Remove comments.
* include/std/std_fstream.h (sync): The role of the old
_M_out_end is now played by _M_out_lim.
(_M_set_indeterminate): Use _M_set_determinate.
(_M_set_determinate): _M_out_end is now _M_out_lim.
(_M_is_indeterminate): Likewise.
* include/std/std_sstream.h (str()): _M_out_end is now _M_out_lim.
(_M_stringbuf_init): Don't set _M_buf_size, unused for sstreams,
which have the information readily available as _M_string.capacity();
for ate and app modes, pass the string size to _M_really_sync.
(_M_really_sync): Consistently set _M_out_end and _M_out_lim, to
point to the end of the buffer (i.e., epptr) and to the string end,
respectively.
* include/std/std_streambuf.h: tweak comments, add _M_out_lim,
which points to the right limit of the used put area.
(_M_out_cur_move): The role of the old _M_out_end is now played
by _M_out_lim.
(_M_out_buf_size): Simplify: now (when _M_out_cur) return simply
_M_out_end - _M_out_cur (i.e., pptr), _very_ close to the letter
of the standard.
(basic_streambuf()): Initialize _M_out_lim too.
* testsuite/27_io/filebuf_virtuals.cc (test10): Trivial tweak.
* testsuite/27_io/filebuf_virtuals.cc (test11): Add.
* testsuite/27_io/stringbuf_virtuals.cc (test09): Add.
2003-02-24 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base_storage.cc (main): Call
set_memory_limits.
2003-02-21 Jerry Quinn <jlquinn@optonline.net>
* include/bits/locale_facets.tcc (_M_convert_float): Replace
numpunct facet accesses with data from __locale_cache.
2003-02-20 Phil Edwards <pme@gcc.gnu.org>
* docs/html/faq/index.html (3.9): New note, wchar_t on FreeBSD.
* docs/html/faq/index.txt: Regenerate.
2003-02-20 Phil Edwards <pme@gcc.gnu.org>
* config/linker-map.gnu: Also export locking symbols needed for the
generic atomicity.h case.
2003-02-20 Alexandre Oliva <aoliva@redhat.com>
* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
config.status.
* configure: Rebuilt.
2003-02-19 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (overflow): According to
27.7.1.3, p5, actual output is performed by sputc(c).
2003-02-19 Phil Edwards <pme@gcc.gnu.org>
PR libstdc++/9582
* include/bits/stl_alloc.h: Remove all traces of assert().
2003-02-18 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (str()): the size of the
current string may be different from the initial one
whenever _M_out_end > _M_out_beg.
* testsuite/27_io/stringbuf_members.cc (test07): Add.
2003-02-18 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9582
* include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
2003-02-17 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_ios.tcc (copyfmt): Copy locale data as well.
* testsuite/27_io/ios_members.cc (test03): New.
2003-02-17 Jerry Quinn <jlquinn@optonline.net>
* include/bits/basic_ios.h (basic_ios::_M_cache_locale): Declare.
(basic_ios::_M_cache_facets): Move into above.
* include/bits/basic_ios.tcc (basic_ios::copyfmt): Rebuild locale
cache.
(basic_ios::imbue): Force locale cache to be built.
(basic_ios::_M_init): Create and initialize locale cache.
* include/bits/ios_base.h (__locale_cache_base): Declare.
(ios_base::_M_locale_cache): New.
(ios_base::_M_cache): Define.
* include/bits/locale_facets.h: (__num_base): Fix comment. Add
_S_end.
(__locale_cache_base,__locale_cache<_CharT>): New classes.
(__locale_cache<char>, __locale_cache<wchar_t>): New specializations.
* include/bits/locale_facets.tcc (num_put::_M_convert_int): Use locale
cache literal string, grouping flag, thousands separator.
(__locale_cache<_CharT>::__locale_cache): New.
(__locale_cache<_CharT>::_M_init): New.
* src/ios.cc: Clear _M_locale_cache in constructor.
* src/locale-inst.cc (__locale_cache<char>, __locale_cache<_char_t>):
New.
2003-02-17 Paolo Carlini <pcarlini@unitus.it>
* src/locale-inst.cc: Do not include <cassert>.
* src/locale.cc: Likewise.
2003-02-17 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9580
* include/std/std_fstream.h: Declare underflow and uflow
specializations, change generic definitions to do nothing.
* src/fstream.cc: Add underflow and uflow specializations.
2003-02-17 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9169
* include/bits/fstream.tcc (_M_convert_to_external):
Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
* testsuite/27_io/filebuf_virtuals.cc (test10): Add.
2003-02-13 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
* include/bits/basic_ios.tcc: Guard use of extern template.
* include/std/std_iomanip.h: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/stl_alloc.h: Same.
* include/bits/locale_facets.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/bits/istream.tcc: Same.
* include/bits/fstream.tcc: Same.
* include/bits/basic_string.tcc: Same.
2003-02-13 Paolo Carlini <pcarlini@unitus.it>
* include/bits/ostream.tcc (sentry::sentry): Improve
performance-wise the fix for libstdc++/9563.
2003-02-12 Phil Edwards <pme@gcc.gnu.org>
* config/cpu/generic/atomicity.h (_Atomic_add_mutex): Fix declaration.
(_GLIBCPP_NEED_GENERIC_MUTEX): Define for this file.
(_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once): Declare
when we don't have static mutex initialization.
(__exchange_and_add): Use _Atomic_add_mutex_once.
* src/misc-inst.cc: Definitions of all the above.
2003-02-12 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9563
* include/bits/ostream.tcc (sentry::sentry): Check
the state of the stream after the preparation.
* testsuite/27_io/ostream_sentry.cc (test02): Add.
2003-02-11 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (stamp-std-precompile): Add rule.
* include/Makefile.in: Regenerated.
2003-02-11 Jerry Quinn <jlquinn@optonline.net>
Benjamin Kosnik <benjamin@redhat.com>
* include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
Add indexes into this array.
(__num_base::_S_atoms): To _S_atoms_in.
(num_put::_M_insert): Rename to _M_pad.
(num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
(num_put::_M_widen_int): Rename to _M_group_int.
(num_put::_M_widen_float): Rename to _M_group_float.
* include/bits/locale_facets.tcc (__int_to_char): New inline
function and adapter functions.
(num_put::_M_group_int): Streamline.
(num_put::_M_group_float): Streamline.
(num_put::_M_convert_int): Remove unused parameter names. Choose
large enough buffer for text. Use __int_to_char instead of
__convert_from_v. Formatted text is now at the end of the buffer.
(num_put::_M_convert_float): Preliminary fixups.
* src/locale-inst.cc (__convert_from_v<long long>): Add ifdef.
(__int_to_char<unsigned long long>): Same.
(__int_to_char<char, unsigned long>): New.
(__int_to_char<char, unsigned long long>): New.
(__int_to_char<wchar_t, unsigned long>): New.
(__int_to_char<wchar_t, unsigned long long>): New.
2003-02-11 Scott Snyder <snyder@fnal.gov>
PR libstdc++/9659
* include/bits/fstream.tcc (seekoff): Avoid operator+
for pos_type.
2003-02-11 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9320
* include/ext/stdio_filebuf.h
(stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
Change to take a __size parameter of type size_t, not
of type (template parameter dependent) int_type.
* src/ios.cc (ios_base::Init::_S_ios_create): Change type of
size vars to size_t.
* testsuite/ext/stdio_filebuf.cc: Add.
2003-02-11 Paolo Carlini <pcarlini@unitus.it>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9318
* include/bits/streambuf.tcc (__copy_streambufs):
Don't conditionalize the copy to __testput.
* testsuite/27_io/streambuf_members.cc (test09, test10): Add.
2002-02-11 DJ Delorie <dj@redhat.com>
* acinclude.m4: Check for native targets that can't link at
this point in the build.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2003-02-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
Correct alignment.
(__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
lock.
2003-02-07 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
unsigned char platforms.
2003-02-06 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9562
* include/std/std_istream.h
(basic_istream::sentry::operator bool()): Make const.
* include/std/std_ostream.h
(basic_ostream::sentry::operator bool()): Likewise.
* testsuite/27_io/istream_sentry.cc (test03): Add.
* testsuite/27_io/ostream_sentry.cc: Add.
2003-02-06 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9548
Implement resolution of DR 231 (Ready)
* include/bits/locale_facets.h (__num_base::_S_format_float):
Change declaration: return void, remove __prec parameter.
* src/locale.cc (__num_base::_S_format_float): Implement
resolution of DR 231.
* include/bits/locale_facets.tcc (num_put::_M_convert_float):
Tweak uses. Check for negative precision.
* testsuite/22_locale/num_put/put/char/6.cc: Add
* testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
2003-02-06 Peter Soetens <peter.soetens@mech.kuleuven.ac.be>
* config/io/basic_file_libio.h: Fixups.
* config/io/c_io_libio.h: Same.
* libio/Makefile.am: Same.
* libio/Makefile.in: Regenerated.
2003-02-06 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/codecvt/encoding/wchar_t/1.cc (test01):
Explicitly use the "C" locale.
* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc (test01): Same.
2003-02-06 Petur Runolfsson <peturr02@ru.is>
DR 75
DR 305
PR libstdc++/9028 (partial)
PR libstdc++/9224
PR libstdc++/9246
PR libstdc++/9247
* src/codecvt.cc
(codecvt<wchar_t, char, mbstate_t>::do_encoding,
codecvt<wchar_t, char, mbstate_t>::do_length,
codecvt<wchar_t, char, mbstate_t>::do_max_length):
Move...
* config/locale/generic/codecvt_members.cc: ...here.
* config/locale/gnu/codecvt_members.cc: ...and here.
* config/locale/generic/codecvt_members.cc,
* config/locale/gnu/codecvt_members.cc
(codecvt<wchar_t, char, mbstate_t>::do_encoding
codecvt<wchar_t, char, mbstate_t>::do_in,
codecvt<wchar_t, char, mbstate_t>::do_length,
codecvt<wchar_t, char, mbstate_t>::do_max_length,
codecvt<wchar_t, char, mbstate_t>::do_out):
New implementation that handles stateless encodings,
including UTF-8.
* config/locale/generic/codecvt_members.cc,
* config/locale/gnu/codecvt_members.cc,
* config/locale/ieee_1003.1-2001/codecvt_specializations.h,
* include/bits/codecvt.h,
* src/codecvt.cc
(codecvt::length, codecvt::do_length):
Change type of first argument of length and do_length from
'const state_type&' to 'state_type&' according to DR 75.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Cleanup.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: New test.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: New test.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: New test.
* testsuite/22_locale/codecvt/encoding/wchar_t/1.cc:
Cleanup and check for correct return value from encoding
for "C" locale.
* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: New test.
* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: New test.
* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/1.cc: Cleanup.
* testsuite/22_locale/codecvt/in/wchar_t/2.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/3.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/4.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/5.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/6.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/7.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/8.cc: New test.
* testsuite/22_locale/codecvt/in/wchar_t/9.cc: New test.
* testsuite/22_locale/codecvt/length/char/1.cc: Cleanup.
* testsuite/22_locale/codecvt/length/char/2.cc: New test.
* testsuite/22_locale/codecvt/length/wchar_t/1.cc: Cleanup.
* testsuite/22_locale/codecvt/length/wchar_t/2.cc: New test.
* testsuite/22_locale/codecvt/length/wchar_t/3.cc: New test.
* testsuite/22_locale/codecvt/length/wchar_t/4.cc: New test.
* testsuite/22_locale/codecvt/length/wchar_t/5.cc: New test.
* testsuite/22_locale/codecvt/length/wchar_t/6.cc: New test.
* testsuite/22_locale/codecvt/length/wchar_t/7.cc: New test.
* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Cleanup.
* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: New test.
* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: New test.
* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: New test.
* testsuite/22_locale/codecvt/out/wchar_t/1.cc: Cleanup.
* testsuite/22_locale/codecvt/out/wchar_t/2.cc: New test.
* testsuite/22_locale/codecvt/out/wchar_t/3.cc: New test.
* testsuite/22_locale/codecvt/out/wchar_t/4.cc: New test.
* testsuite/22_locale/codecvt/out/wchar_t/5.cc: New test.
* testsuite/22_locale/codecvt/out/wchar_t/6.cc: New test.
* testsuite/22_locale/codecvt/out/wchar_t/7.cc: New test.
* testsuite/22_locale/codecvt/unicode/1.cc: New test.
* testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Cleanup.
* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: New test.
* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: New test.
* testsuite/22_locale/codecvt/unshfit/wchar_t/4.cc: New test.
2003-02-05 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc (time_put::do_put): Use __write.
(money_put::do_put): Same.
2003-02-05 Jerry Quinn <jlquinn@optonline.net>
* include/bits/ios_base.h (ios_base): Document reserved storage.
* include/bits/locale_facets.h: (struct __pad): Comment on
implementation.
(__verify_grouping): Same.
(__add_grouping): Same.
* include/bits/locale_facets.tcc (__verify_grouping): Move
comments to declaration.
(__add_grouping): Same.
* include/bits/locale_facets.tcc:
(__write<_CharT, _OutIter>): New function.
(__write<_CharT>): New function specialization.
(num_put::_M_insert): Remove explicit loop over iterator. Use
__write.
(num_put::_M_widen_float): Remove __basefield.
(num_put::_M_widen_int): Move __basefield to within grouping block.
* include/bits/streambuf_iterator.h: Include <streambuf>.
(ostreambuf_iterator::_M_put): Add.
2003-02-05 Paolo Carlini <pcarlini@unitus.it>
* testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
2003-02-04 Nathan Myers <ncm@cantrip.org>
* testsuite/25_algorithms/min_max.cc (test02): Add.
2003-02-04 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9439, PR libstdc++/9425
* config/io/basic_file_stdio.cc
(__basic_file<char>::seekoff, seekpos): Return -1L if
fseek fails.
* include/bits/fstream.tcc (basic_filebuf::seekoff):
Check _M_file.seekoff return value; always return
pos_type(off_type(-1)) in case of failure.
(basic_filebuf::pbackfail): Check this->seekoff return
value and return traits_type::eof() in case of failure.
* testsuite/27_io/filebuf_virtuals.cc (test09): Add.
2003-02-04 Jerry Quinn <jlquinn@optonline.net>
* include/std/std_ostream.h (ostream::_M_write): Declare.
* ostream.tcc (ostream::_M_write): Define.
(basic_ostream::write): Use it.
(operator<<(basic_ostream, _CharT)): Ditto.
(operator<<(basic_ostream, char)): Ditto.
(operator<<(basic_ostream, _CharT*)): Ditto.
(operator<<(basic_ostream, char*)): Ditto.
(operator<<(basic_ostream, basic_string)): Ditto.
2003-02-04 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/26_numerics/valarray_name_lookup.cc: Fix.
2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/27_io/howto.html: Link to Dietmar Kuehl's IOStream page,
add HTML comment about updating links if numbering changes.
2003-02-04 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9538
* include/bits/streambuf.tcc (sputbackc): Access
this->gptr()[-1] only if _M_in_beg < _M_in_cur.
* testsuite/27_io/filebuf_virtuals.cc (test08): Add.
2003-02-04 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9507
* include/bits/fstream.tcc (open): If the 'ate' repositioning
operation fails, calls close _and_ returns a null pointer
to indicate failure (27.8.1.3,4).
* testsuite/27_io/filebuf_members.cc (test_06): Add.
2003-02-04 Petur Runolfsson <peturr02@ru.is>
* testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/27_io/howto.html: New section on stdio_filebuf.
* docs/html/ext/howto.html: Move stdio_filebuf notes to 27_io.
* docs/html/documentation.html: Regenerate.
2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
* docs/html/17_intro/porting.texi: Update to GFDL 1.2.
* docs/html/17_intro/porting.html: Regenerate.
2003-02-03 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
Phil Edwards <pme@gcc.gnu.org>
* include/std/std_bitset.h: Replace CHAR_BIT with __CHAR_BIT__, use
numeric_limits for bits-per-word values.
(_Base_bitset::_M_do_count, _Base_bitset<1>::_M_do_count):
Use __builtin_popcountl instead.
(_Base_bitset::_M_do_find_first, _Base_bitset::_M_do_find_next,
_Base_bitset<1>::_M_do_find_first, _Base_bitset<1>::_M_do_find_next):
Use __builtin_ctzl instead.
(_S_bit_count, _S_first_one): Remove.
* config/linker-map.gnu (GLIBCPP_3.4): Remove std::_S_bit_count.
* src/Makefile.am (sources): Remove bitset.cc.
* src/bitset.cc: Delete file.
* src/Makefile.in: Regenerate.
2003-02-03 Phil Edwards <pme@gcc.gnu.org>
PR libstdc++/9527, PR libstdc++/8713
* docs/html/install.html: Mention glibc version requirement.
* docs/html/faq/index.html (3.8): New note, glibc 2.2.5+ is needed
with 3.2.1+ (formatting bugfixes).
* docs/html/faq/index.txt: Regenerate.
2003-02-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
PR libstdc++/9234
* include/bits/valarray_before.h (_UnBase::operator[]): Apply unary
operator.
* include/bits/valarray_before.h (__not_equal_to): Use != instead
of ==.
* testsuite/26_numerics/valarray_operators.cc: New test.
2003-02-01 Phil Edwards <pme@gcc.gnu.org>
* docs/html/faq/index.html: Correct link to libg++ information.
* docs/html/faq/index.txt: Regenerated.
2003-02-01 Paolo Carlini <pcarlini@unitus.it>
Benjamin Kosnik <bkoz@redhat.com>
Const correctness issue:
http://gcc.gnu.org/ml/libstdc++/2003-01/msg00370.html
* include/bits/locale_classes.h
(locale::_Impl::_M_facets): Change type to const facet**.
(locale::_Impl::_M_install_facet): Change declaration to
take const facet*.
(locale::facet::_M_references): Make mutable.
(locale::facet::_M_add_reference): Declare const.
(locale::facet::_M_remove_reference): Likewise.
* include/bits/locale_facets.tcc
(use_facet(const locale&)): Tweak for const facet** _M_facets.
(has_facet(const locale&)): Likewise.
* src/locale.cc
(locale::facet::_M_add_reference): Adjust definition.
(locale::facet::_M_remove_reference): Likewise.
* src/localename.cc
(locale::_Impl::_Impl(const _Impl&, size_t)): Tweak for
const facet** _M_facets.
(locale::_Impl::_Impl(const char*, size_t)): Likewise.
(locale::_Impl::_Impl(facet**, size_t, bool)): Likewise.
(locale::_Impl::_M_install_facet): Adjust definition to take
const facet* and for const facet** _M_facets.
* testsuite/22_locale/locale/cons/8.cc: Add.
2003-01-29 Mark Mitchell <mark@codesourcery.com>
* include/std/std_limits.h (numeric_limits<float>::has_infinity):
Use __FLT_HAS_INIFINITY__ to initialize.
(numeric_limits<float>::has_quiet_NaN): Likewise.
(numeric_limits<double>::has_infinity): Use __DBL_HAS_INIFINITY__
to initialize.
(numeric_limits<double>::has_quiet_NaN): Likewise.
(numeric_limits<long double>::has_infinity): Use
__LDBL_HAS_INIFINITY__ to initialize.
(numeric_limits<long_double>::has_quiet_NaN): Likewise.
2003-01-28 Nathan Sidwell <nathan@codesourcery.com>
PR c++/9433
* libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
with bases which are very ambiguous.
2003-01-28 Danny Smith <dannysmith@users.sourceforge.net>
* src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
@EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
* libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
2003-01-27 Alexandre Oliva <aoliva@redhat.com>
* acinclude.m4 (glibcpp_toolexeclibdir): Instead of
$(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
version_specific_libs is enabled.
* aclocal.m4, configure: Rebuilt.
2003-01-24 Nathan Sidwell <nathan@codesourcery.com>
* include/bits/valarray_meta.h: Remove, split into ...
* include/bits/valarray_before.h: ... this, and ...
* include/bits/valarray_after.h: ... this.
* include/std/std_valarray.h: Adjust.
* include/Makefile.am (bits_headers): Adjust.
* include/Makefile.in: Regenerate.
2003-01-24 Andreas Schwab <schwab@suse.de>
* config/linker-map.gnu: Fix for size_t variance.
2003-01-23 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9322
* include/std/std_streambuf.h
(basic_streambuf::basic_streambuf,
basic_streambuf::~basic_streambuf,
basic_streambuf::getloc, basic_streambuf::imbue):
Remove _M_buf_locale_init
* include/bits/fstream.tcc (basic_filebuf::imbue): Likewise
* testsuite/27_io/filebuf_virtuals.cc (test08): Add.
* testsuite/27_io/streambuf_members.cc (test08): Add.
* testsuite/27_io/stringbuf_virtuals.cc (test08): Add.
2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
Revert include ordering.
* config/locale/generic/c_locale.h: Add include guards.
* config/locale/gnu/c_locale.h: Same.
* include/bits/locale_classes.h: Remove cctype include.
* include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
* include/std/std_fstream.h: Remove streambuf include.
* include/std/std_sstream.h: Remove streambuf include.
2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
* configure.in (libtool_VERSION): To 6:0:0.
* configure: Regenerated.
* config/linker-map.gnu: Clean.
* src/misc-inst.cc: Remove instantiations.
* include/bits/stl_alloc.h (__malloc_alloc_template):
To __malloc_alloc.
(__default_alloc_template): To __pool_alloc.
* src/stl-inst.cc: Same.
* include/backward/alloc.h: Update.
* testsuite/ext/allocators.cc: Update.
* src/globals.cc (__gnu_cxx): Remove _GLIBCPP_ASM_SYMVER. Should
really try to remove these if possible.
* src/locale.cc (std): Same.
* testsuite/abi_check.cc (check_version): Add.
2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
Sysoltsev Slawa <Vyatcheslav.Sysoltsev@intel.com>
Mark Mitchell <mark@codesourcery.com>
PR libstdc++/9269
* include/std/std_fstream.h (basic_filebuf::uflow): Declare.
(basic_filebuf::underflow): Declare.
Move definitions.
2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h: Move non-facet classes requiring
<string> to...
* include/bits/locale_classes.h: New.
* include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
* include/bits/Makefile.in: Regenerate.
* include/bits/locale_facets.tcc (__convert_from_v): Move to...
* config/locale/gnu/c_locale.h: ...here.
* config/locale/generic/c_locale.h: Same.
* include/bits/locale_facets.tcc: Move declarations to...
* include/bits/locale_facets.h: ...here.
* include/bits/basic_ios.h: Tweak includes accordingly.
* include/std/std_sstream.h: Add streambuf include.
* include/std/std_fstream.h: Ditto.
* include/std/std_locale.h: Add locale_classes.h include.
* include/std/std_iosfwd.h: Tweak.
* src/concept-inst.cc: Add iterator include.
* config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
bits as unexported in the future.
2003-01-21 Benjamin Kosnik <bkoz@redhat.com>
Reshuffle 22_locale testsuite.
* 22_locale/(codecvt.cc money_get.cc
codecvt_members_char_char.cc money_get_members_char.cc
codecvt_members_unicode_char.cc money_get_members_wchar_t.cc
codecvt_members_unicode_wchar_t.cc moneypunct_byname.cc
codecvt_members_wchar_t_char.cc moneypunct.cc collate_byname.cc
moneypunct_members_char.cc collate.cc moneypunct_members_wchar_t.cc
collate_members_char.cc money_put.cc collate_members_wchar_t.cc
money_put_members_char.cc ctor_copy_dtor.cc
money_put_members_wchar_t.cc ctype.cc num_get.cc ctype_is_char.cc
num_get_members_char.cc ctype_is_wchar_t.cc num_get_members_wchar_t.cc
ctype_members_char.cc numpunct_byname.cc ctype_members_wchar_t.cc
numpunct.cc ctype_narrow_char.cc numpunct_members_char.cc
ctype_narrow_wchar_t.cc numpunct_members_wchar_t.cc ctype_scan_char.cc
num_put.cc ctype_scan_wchar_t.cc num_put_members_char.cc
ctype_to_char.cc num_put_members_wchar_t.cc ctype_to_wchar_t.cc
operators.cc ctype_widen_char.cc static_members.cc
ctype_widen_wchar_t.cc time_get.cc facet.cc time_get_members_char.cc
global_templates.cc time_get_members_wchar_t.cc, members.cc,
time_put.cc, messages_byname.cc, time_put_members_char.cc,
messages.cc, time_put_members_wchar_t.cc, messages_members_char.cc):
Split up into individual test cases...
* 22_locale/codecvt/1.cc: New.
* 22_locale/codecvt/2.cc: New.
* 22_locale/codecvt/always_noconv/char/1.cc: New.
* 22_locale/codecvt/always_noconv/char/wrapped_env.cc: New.
* 22_locale/codecvt/always_noconv/char/wrapped_locale.cc: New.
* 22_locale/codecvt/always_noconv/wchar_t/1.cc: New.
* 22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc: New.
* 22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc: New.
* 22_locale/codecvt/encoding/char/1.cc: New.
* 22_locale/codecvt/encoding/char/wrapped_env.cc: New.
* 22_locale/codecvt/encoding/char/wrapped_locale.cc: New.
* 22_locale/codecvt/encoding/wchar_t/1.cc: New.
* 22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: New.
* 22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc: New.
* 22_locale/codecvt/in/char/1.cc: New.
* 22_locale/codecvt/in/char/wrapped_env.cc: New.
* 22_locale/codecvt/in/char/wrapped_locale.cc: New.
* 22_locale/codecvt/in/wchar_t/1.cc: New.
* 22_locale/codecvt/in/wchar_t/wrapped_env.cc: New.
* 22_locale/codecvt/in/wchar_t/wrapped_locale.cc: New.
* 22_locale/codecvt/length/char/1.cc: New.
* 22_locale/codecvt/length/char/wrapped_env.cc: New.
* 22_locale/codecvt/length/char/wrapped_locale.cc: New.
* 22_locale/codecvt/length/wchar_t/1.cc: New.
* 22_locale/codecvt/length/wchar_t/wrapped_env.cc: New.
* 22_locale/codecvt/length/wchar_t/wrapped_locale.cc: New.
* 22_locale/codecvt/max_length/char/1.cc: New.
* 22_locale/codecvt/max_length/char/wrapped_env.cc: New.
* 22_locale/codecvt/max_length/char/wrapped_locale.cc: New.
* 22_locale/codecvt/max_length/wchar_t/1.cc: New.
* 22_locale/codecvt/max_length/wchar_t/wrapped_env.cc: New.
* 22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc: New.
* 22_locale/codecvt/out/char/1.cc: New.
* 22_locale/codecvt/out/char/wrapped_env.cc: New.
* 22_locale/codecvt/out/char/wrapped_locale.cc: New.
* 22_locale/codecvt/out/wchar_t/1.cc: New.
* 22_locale/codecvt/out/wchar_t/wrapped_env.cc: New.
* 22_locale/codecvt/out/wchar_t/wrapped_locale.cc: New.
* 22_locale/codecvt/unicode/char.cc: New.
* 22_locale/codecvt/unicode/wchar_t.cc: New.
* 22_locale/codecvt/unshift/char/1.cc: New.
* 22_locale/codecvt/unshift/char/wrapped_env.cc: New.
* 22_locale/codecvt/unshift/char/wrapped_locale.cc: New.
* 22_locale/codecvt/unshift/wchar_t/1.cc: New.
* 22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: New.
* 22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc: New.
* 22_locale/collate/1.cc: New.
* 22_locale/collate/2.cc: New.
* 22_locale/collate/compare/char/1.cc: New.
* 22_locale/collate/compare/char/2.cc: New.
* 22_locale/collate/compare/char/wrapped_env.cc: New.
* 22_locale/collate/compare/char/wrapped_locale.cc: New.
* 22_locale/collate/compare/wchar_t/1.cc: New.
* 22_locale/collate/compare/wchar_t/2.cc: New.
* 22_locale/collate/compare/wchar_t/wrapped_env.cc: New.
* 22_locale/collate/compare/wchar_t/wrapped_locale.cc: New.
* 22_locale/collate/hash/char/1.cc: New.
* 22_locale/collate/hash/char/2.cc: New.
* 22_locale/collate/hash/char/wrapped_env.cc: New.
* 22_locale/collate/hash/char/wrapped_locale.cc: New.
* 22_locale/collate/hash/wchar_t/1.cc: New.
* 22_locale/collate/hash/wchar_t/2.cc: New.
* 22_locale/collate/hash/wchar_t/wrapped_env.cc: New.
* 22_locale/collate/hash/wchar_t/wrapped_locale.cc: New.
* 22_locale/collate/transform/char/2.cc: New.
* 22_locale/collate/transform/char/wrapped_env.cc: New.
* 22_locale/collate/transform/char/wrapped_locale.cc: New.
* 22_locale/collate/transform/wchar_t/2.cc: New.
* 22_locale/collate/transform/wchar_t/wrapped_env.cc: New.
* 22_locale/collate/transform/wchar_t/wrapped_locale.cc: New.
* 22_locale/collate_byname/1.cc: New.
* 22_locale/ctype/1.cc: New.
* 22_locale/ctype/2.cc: New.
* 22_locale/ctype/cons/char/1.cc: New.
* 22_locale/ctype/cons/char/wrapped_env.cc: New.
* 22_locale/ctype/cons/char/wrapped_locale.cc: New.
* 22_locale/ctype/is/char/1.cc: New.
* 22_locale/ctype/is/char/2.cc: New.
* 22_locale/ctype/is/char/3.cc: New.
* 22_locale/ctype/is/char/wrapped_env.cc: New.
* 22_locale/ctype/is/char/wrapped_locale.cc: New.
* 22_locale/ctype/is/wchar_t/1.cc: New.
* 22_locale/ctype/is/wchar_t/2.cc: New.
* 22_locale/ctype/is/wchar_t/wrapped_env.cc: New.
* 22_locale/ctype/is/wchar_t/wrapped_locale.cc: New.
* 22_locale/ctype/narrow/char/1.cc: New.
* 22_locale/ctype/narrow/char/2.cc: New.
* 22_locale/ctype/narrow/char/wrapped_env.cc: New.
* 22_locale/ctype/narrow/char/wrapped_locale.cc: New.
* 22_locale/ctype/narrow/wchar_t/1.cc: New.
* 22_locale/ctype/narrow/wchar_t/2.cc: New.
* 22_locale/ctype/narrow/wchar_t/wrapped_env.cc: New.
* 22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: New.
* 22_locale/ctype/scan/char/1.cc: New.
* 22_locale/ctype/scan/char/wrapped_env.cc: New.
* 22_locale/ctype/scan/char/wrapped_locale.cc: New.
* 22_locale/ctype/scan/wchar_t/1.cc: New.
* 22_locale/ctype/scan/wchar_t/wrapped_env.cc: New.
* 22_locale/ctype/scan/wchar_t/wrapped_locale.cc: New.
* 22_locale/ctype/to/char/1.cc: New.
* 22_locale/ctype/to/char/wrapped_env.cc: New.
* 22_locale/ctype/to/char/wrapped_locale.cc: New.
* 22_locale/ctype/to/wchar_t/1.cc: New.
* 22_locale/ctype/to/wchar_t/wrapped_env.cc: New.
* 22_locale/ctype/to/wchar_t/wrapped_locale.cc: New.
* 22_locale/ctype/widen/char/1.cc: New.
* 22_locale/ctype/widen/char/wrapped_env.cc: New.
* 22_locale/ctype/widen/char/wrapped_locale.cc: New.
* 22_locale/ctype/widen/wchar_t/1.cc: New.
* 22_locale/ctype/widen/wchar_t/wrapped_env.cc: New.
* 22_locale/ctype/widen/wchar_t/wrapped_locale.cc: New.
* 22_locale/facet/1.cc: New.
* 22_locale/facet/2.cc: New.
* 22_locale/global_templates/1.cc: New.
* 22_locale/locale/cons/1.cc: New.
* 22_locale/locale/cons/2.cc: New.
* 22_locale/locale/cons/3.cc: New.
* 22_locale/locale/cons/4.cc: New.
* 22_locale/locale/cons/5.cc: New.
* 22_locale/locale/cons/6.cc: New.
* 22_locale/locale/cons/7.cc: New.
* 22_locale/locale/global_locale_objects/1.cc: New.
* 22_locale/locale/global_locale_objects/2.cc: New.
* 22_locale/locale/global_locale_objects/3.cc: New.
* 22_locale/locale/operations/1.cc: New.
* 22_locale/locale/operations/2.cc: New.
* 22_locale/messages/1.cc: New.
* 22_locale/messages/2.cc: New.
* 22_locale/messages/members/char/1.cc: New.
* 22_locale/messages/members/char/2.cc: New.
* 22_locale/messages/members/char/3.cc: New.
* 22_locale/messages/members/char/wrapped_env.cc: New.
* 22_locale/messages/members/char/wrapped_locale.cc: New.
* 22_locale/messages_byname/1.cc: New.
* 22_locale/money_get/1.cc: New.
* 22_locale/money_get/2.cc: New.
* 22_locale/money_get/get/char/1.cc: New.
* 22_locale/money_get/get/char/2.cc: New.
* 22_locale/money_get/get/char/3.cc: New.
* 22_locale/money_get/get/char/4.cc: New.
* 22_locale/money_get/get/char/5.cc: New.
* 22_locale/money_get/get/char/6.cc: New.
* 22_locale/money_get/get/char/7.cc: New.
* 22_locale/money_get/get/char/8.cc: New.
* 22_locale/money_get/get/char/wrapped_env.cc: New.
* 22_locale/money_get/get/char/wrapped_locale.cc: New.
* 22_locale/money_get/get/wchar_t/1.cc: New.
* 22_locale/money_get/get/wchar_t/2.cc: New.
* 22_locale/money_get/get/wchar_t/3.cc: New.
* 22_locale/money_get/get/wchar_t/4.cc: New.
* 22_locale/money_get/get/wchar_t/5.cc: New.
* 22_locale/money_get/get/wchar_t/6.cc: New.
* 22_locale/money_get/get/wchar_t/7.cc: New.
* 22_locale/money_get/get/wchar_t/8.cc: New.
* 22_locale/money_get/get/wchar_t/wrapped_env.cc: New.
* 22_locale/money_get/get/wchar_t/wrapped_locale.cc: New.
* 22_locale/money_put/1.cc: New.
* 22_locale/money_put/2.cc: New.
* 22_locale/money_put/put/char/1.cc: New.
* 22_locale/money_put/put/char/2.cc: New.
* 22_locale/money_put/put/char/3.cc: New.
* 22_locale/money_put/put/char/4.cc: New.
* 22_locale/money_put/put/char/5.cc: New.
* 22_locale/money_put/put/char/6.cc: New.
* 22_locale/money_put/put/char/wrapped_env.cc: New.
* 22_locale/money_put/put/char/wrapped_locale.cc: New.
* 22_locale/money_put/put/wchar_t/1.cc: New.
* 22_locale/money_put/put/wchar_t/2.cc: New.
* 22_locale/money_put/put/wchar_t/3.cc: New.
* 22_locale/money_put/put/wchar_t/4.cc: New.
* 22_locale/money_put/put/wchar_t/5.cc: New.
* 22_locale/money_put/put/wchar_t/6.cc: New.
* 22_locale/money_put/put/wchar_t/wrapped_env.cc: New.
* 22_locale/money_put/put/wchar_t/wrapped_locale.cc: New.
* 22_locale/moneypunct/1.cc: New.
* 22_locale/moneypunct/2.cc: New.
* 22_locale/moneypunct/3.cc: New.
* 22_locale/moneypunct/members/char/1.cc: New.
* 22_locale/moneypunct/members/char/2.cc: New.
* 22_locale/moneypunct/members/char/wrapped_env.cc: New.
* 22_locale/moneypunct/members/char/wrapped_locale.cc: New.
* 22_locale/moneypunct/members/wchar_t/1.cc: New.
* 22_locale/moneypunct/members/wchar_t/2.cc: New.
* 22_locale/moneypunct/members/wchar_t/wrapped_env.cc: New.
* 22_locale/moneypunct/members/wchar_t/wrapped_locale.cc: New.
* 22_locale/moneypunct_byname/1.cc: New.
* 22_locale/num_get/1.cc: New.
* 22_locale/num_get/2.cc: New.
* 22_locale/num_get/get/char/1.cc: New.
* 22_locale/num_get/get/char/2.cc: New.
* 22_locale/num_get/get/char/3.cc: New.
* 22_locale/num_get/get/char/4.cc: New.
* 22_locale/num_get/get/char/5.cc: New.
* 22_locale/num_get/get/char/6.cc: New.
* 22_locale/num_get/get/char/wrapped_env.cc: New.
* 22_locale/num_get/get/char/wrapped_locale.cc: New.
* 22_locale/num_get/get/wchar_t/1.cc: New.
* 22_locale/num_get/get/wchar_t/2.cc: New.
* 22_locale/num_get/get/wchar_t/3.cc: New.
* 22_locale/num_get/get/wchar_t/4.cc: New.
* 22_locale/num_get/get/wchar_t/5.cc: New.
* 22_locale/num_get/get/wchar_t/6.cc: New.
* 22_locale/num_get/get/wchar_t/wrapped_env.cc: New.
* 22_locale/num_get/get/wchar_t/wrapped_locale.cc: New.
* 22_locale/num_put/1.cc: New.
* 22_locale/num_put/2.cc: New.
* 22_locale/num_put/put/char/1.cc: New.
* 22_locale/num_put/put/char/2.cc: New.
* 22_locale/num_put/put/char/3.cc: New.
* 22_locale/num_put/put/char/4.cc: New.
* 22_locale/num_put/put/char/5.cc: New.
* 22_locale/num_put/put/char/wrapped_env.cc: New.
* 22_locale/num_put/put/char/wrapped_locale.cc: New.
* 22_locale/num_put/put/wchar_t/1.cc: New.
* 22_locale/num_put/put/wchar_t/2.cc: New.
* 22_locale/num_put/put/wchar_t/3.cc: New.
* 22_locale/num_put/put/wchar_t/4.cc: New.
* 22_locale/num_put/put/wchar_t/5.cc: New.
* 22_locale/num_put/put/wchar_t/wrapped_env.cc: New.
* 22_locale/num_put/put/wchar_t/wrapped_locale.cc: New.
* 22_locale/numpunct/1.cc: New.
* 22_locale/numpunct/2.cc: New.
* 22_locale/numpunct/members/char/1.cc: New.
* 22_locale/numpunct/members/char/2.cc: New.
* 22_locale/numpunct/members/char/wrapped_env.cc: New.
* 22_locale/numpunct/members/char/wrapped_locale.cc: New.
* 22_locale/numpunct/members/wchar_t/1.cc: New.
* 22_locale/numpunct/members/wchar_t/2.cc: New.
* 22_locale/numpunct/members/wchar_t/wrapped_env.cc: New.
* 22_locale/numpunct/members/wchar_t/wrapped_locale.cc: New.
* 22_locale/numpunct_byname/1.cc: New.
* 22_locale/numpunct_byname/2.cc: New.
* 22_locale/time_get/1.cc: New.
* 22_locale/time_get/2.cc: New.
* 22_locale/time_get/date_order/char/1.cc: New.
* 22_locale/time_get/date_order/char/wrapped_env.cc: New.
* 22_locale/time_get/date_order/char/wrapped_locale.cc: New.
* 22_locale/time_get/date_order/wchar_t/1.cc: New.
* 22_locale/time_get/date_order/wchar_t/wrapped_env.cc: New.
* 22_locale/time_get/date_order/wchar_t/wrapped_locale.cc: New.
* 22_locale/time_get/get_date/char/1.cc: New.
* 22_locale/time_get/get_date/char/2.cc: New.
* 22_locale/time_get/get_date/char/3.cc: New.
* 22_locale/time_get/get_date/char/wrapped_env.cc: New.
* 22_locale/time_get/get_date/char/wrapped_locale.cc: New.
* 22_locale/time_get/get_date/wchar_t/1.cc: New.
* 22_locale/time_get/get_date/wchar_t/2.cc: New.
* 22_locale/time_get/get_date/wchar_t/3.cc: New.
* 22_locale/time_get/get_date/wchar_t/wrapped_env.cc: New.
* 22_locale/time_get/get_date/wchar_t/wrapped_locale.cc: New.
* 22_locale/time_get/get_monthname/char/1.cc: New.
* 22_locale/time_get/get_monthname/char/2.cc: New.
* 22_locale/time_get/get_monthname/char/3.cc: New.
* 22_locale/time_get/get_monthname/char/wrapped_env.cc: New.
* 22_locale/time_get/get_monthname/char/wrapped_locale.cc: New.
* 22_locale/time_get/get_monthname/wchar_t/1.cc: New.
* 22_locale/time_get/get_monthname/wchar_t/2.cc: New.
* 22_locale/time_get/get_monthname/wchar_t/3.cc: New.
* 22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc: New.
* 22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc: New.
* 22_locale/time_get/get_time/char/1.cc: New.
* 22_locale/time_get/get_time/char/2.cc: New.
* 22_locale/time_get/get_time/char/3.cc: New.
* 22_locale/time_get/get_time/char/wrapped_env.cc: New.
* 22_locale/time_get/get_time/char/wrapped_locale.cc: New.
* 22_locale/time_get/get_time/wchar_t/1.cc: New.
* 22_locale/time_get/get_time/wchar_t/2.cc: New.
* 22_locale/time_get/get_time/wchar_t/3.cc: New.
* 22_locale/time_get/get_time/wchar_t/wrapped_env.cc: New.
* 22_locale/time_get/get_time/wchar_t/wrapped_locale.cc: New.
* 22_locale/time_get/get_weekday/char/1.cc: New.
* 22_locale/time_get/get_weekday/char/2.cc: New.
* 22_locale/time_get/get_weekday/char/3.cc: New.
* 22_locale/time_get/get_weekday/char/wrapped_env.cc: New.
* 22_locale/time_get/get_weekday/char/wrapped_locale.cc: New.
* 22_locale/time_get/get_weekday/wchar_t/1.cc: New.
* 22_locale/time_get/get_weekday/wchar_t/2.cc: New.
* 22_locale/time_get/get_weekday/wchar_t/3.cc: New.
* 22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc: New.
* 22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc: New.
* 22_locale/time_get/get_year/char/1.cc: New.
* 22_locale/time_get/get_year/char/3.cc: New.
* 22_locale/time_get/get_year/char/wrapped_env.cc: New.
* 22_locale/time_get/get_year/char/wrapped_locale.cc: New.
* 22_locale/time_get/get_year/wchar_t/1.cc: New.
* 22_locale/time_get/get_year/wchar_t/3.cc: New.
* 22_locale/time_get/get_year/wchar_t/wrapped_env.cc: New.
* 22_locale/time_get/get_year/wchar_t/wrapped_locale.cc: New.
* 22_locale/time_put/1.cc: New.
* 22_locale/time_put/2.cc: New.
* 22_locale/time_put/put/char/1.cc: New.
* 22_locale/time_put/put/char/10.cc: New.
* 22_locale/time_put/put/char/2.cc: New.
* 22_locale/time_put/put/char/3.cc: New.
* 22_locale/time_put/put/char/4.cc: New.
* 22_locale/time_put/put/char/5.cc: New.
* 22_locale/time_put/put/char/6.cc: New.
* 22_locale/time_put/put/char/7.cc: New.
* 22_locale/time_put/put/char/8.cc: New.
* 22_locale/time_put/put/char/9.cc: New.
* 22_locale/time_put/put/char/wrapped_env.cc: New.
* 22_locale/time_put/put/char/wrapped_locale.cc: New.
* 22_locale/time_put/put/wchar_t/1.cc: New.
* 22_locale/time_put/put/wchar_t/10.cc: New.
* 22_locale/time_put/put/wchar_t/2.cc: New.
* 22_locale/time_put/put/wchar_t/3.cc: New.
* 22_locale/time_put/put/wchar_t/4.cc: New.
* 22_locale/time_put/put/wchar_t/5.cc: New.
* 22_locale/time_put/put/wchar_t/6.cc: New.
* 22_locale/time_put/put/wchar_t/7.cc: New.
* 22_locale/time_put/put/wchar_t/8.cc: New.
* 22_locale/time_put/put/wchar_t/9.cc: New.
* 22_locale/time_put/put/wchar_t/wrapped_env.cc: New.
* 22_locale/time_put/put/wchar_t/wrapped_locale.cc: New.
2003-01-16 Jeffrey D. Oldham <oldham@codesourcery.com>
* config/locale/generic/messages_members.h
(messages_byname<_CharT>::messages_byname): Use this-> to refer to
unqualified members of base clasess.
2003-01-16 Mark Mitchell <mark@codesourcery.com>
Jeffrey Oldham <oldham@codesourcery.com>
* config/locale/gnu/messages_members.h: Use this-> to refer to
unqualified members of base clasess.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Likewise.
* include/bits/codecvt.h: Likewise.
* include/bits/deque.tcc: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/bits/istream.tcc: Likewise.
* include/bits/list.tcc: Likewise.
* include/bits/locale_facets.h: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/sstream.tcc: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/vector.tcc: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/stdio_filebuf.h: Likewise.
* include/ext/stl_rope.h: Likewise.
* include/std/std_fstream.h: Likewise.
* include/std/std_sstream.h: Likewise.
2003-01-15 Phil Edwards <pme@gcc.gnu.org>
* include/bits/basic_string.tcc (_S_string_copy): Unused, remove.
2003-01-15 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* testsuite/Makefile.am (all-local): Add conditional rule to
generate testsuite_wchar_t.
* testsuite/Makefile.in: Regenerate.
* testsuite/lib/libstdc++-v3-dg.exp
(libstdc++-v3-list-sourcefiles): Remove wchar_t files if
testsuite_wchar_t is not present in the build directory.
* testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
Remove setulimit bits.
* testsuite/26_numerics/complex_value.cc: Set to noopts.
* testsuite/Makefile.am (CLEANFILES): Add.
* testsuite/Makefile.in: Regenerate.
2003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
* config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
__hppa__.
2003-01-14 Jeffrey D. Oldham <oldham@codesourcery.com>
Further conform g++'s __vmi_class_type_info to the C++ ABI
specification.
* libsupc++/cxxabi.h
(__vmi_class_type_info::__flags_masks): Remove enumerations not
required by the specification.
2003-01-12 Benjamin Kosnik <bkoz@redhat.com>
Renames, namespaces for testsuite utilities.
* testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
(gnu_allocator_tracker): Rename to allocation_tracker.
(gnu_new_allocator): Rename to tracker_alloc.
(__set_testsuite_memlimit): Rename to set_memory_limits.
(gnu_assignment_operator): Rename to assignment_operator.
(gnu_destructor): Rename to destructor.
(gnu_copy_tracker): Rename to copy_tracker.
(gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
(run_tests_wrapped_locale): New.
(run_tests_wrapped_env): New.
* testsuite/testsuite_hooks.cc: Same.
(class locale_data): Add.
(class enviornment_variable): Add.
(class not_found): Add.
* testsuite/testsuite_allocator.h: Same.
* testsuite/testsuite_allocator.cc: Same.
* testsuite/23_containers/deque_ctor.cc
(test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
allocation_tracker.
Change gnu_new_allocator to tracker_alloc.
Change gnu_counting_struct to counter.
Change gnu_copy_tracker to copy_tracker.
Change gnu_copy_constructor to copy_constructor.
Change gnu_assignment_operator to assignment_operator.
Inject.
* testsuite/23_containers/vector_capacity.cc: Same.
* testsuite/23_containers/vector_ctor.cc (test01): Same.
* testsuite/23_containers/list_modifiers.cc: Change
gnu_copy_tracker to copy_tracker.
* testsuite/21_strings/ctor_copy_dtor.cc (main): Change
__set_testsuite_memlimit to set_memory_limits.
* testsuite/21_strings/insert.cc (main): Same.
* testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
* testsuite/27_io/stringstream.cc: Same.
* testsuite/27_io/stringbuf.cc: Same.
* testsuite/27_io/streambuf.cc: Same.
* testsuite/27_io/ostream.cc: Same.
* testsuite/27_io/istream.cc: Same.
* testsuite/27_io/fstream.cc: Same.
* testsuite/lib/libstdc++-v3-dg.exp
(libstdc++-v3-list-sourcefiles): Additionally handle files two and
three levels deeper in glob patterns.
2003-01-11 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/tables.html: Finished now.
* docs/doxygen/user.cfg.in: Update to latest version of Doxygen.
* include/bits/basic_ios.h (basic_ios::rdbuf): Add example to
comments.
* include/bits/deque.tcc, include/bits/stl_alloc.h,
include/bits/stl_deque.h, include/bits/stl_list.h,
include/bits/stl_vector.h: Remove _GLIBCPP_DEPRECATED bits scheduled
for 3.4 removal.
2003-01-09 Benjamin Kosnik <bkoz@redhat.com>
* configure.in: Revert.
* configure: Regenerate.
2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
* include/Makefile.am (install-data-local): Prepend
$(DESTDIR) to destination paths in all (un)installation
commands. Use ${c_base_builddir} and ${std_builddir}
as destination subdirectories to achieve consistency with
preceding mkinstalldirs commands. No effect because both
variables contain "." only.
* include/Makefile.in: Regenerate.
2003-01-08 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (stamp-*): Add checks for existing stamps.
* include/Makefile.in: Regenerate.
* acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Correct comment.
* aclocal.m4: Regenerate.
* configure.in: Don't add new multi-do rules every time the
directory is reconfigured.
* configure: Regenerate.
2003-01-08 Brad Spencer <spencer@infointeractive.com>
Nathan Myers <ncm@cantrip.org>
* src/Makefile.am (stamp-debug): Clean.
* src/Makefile.in: Regenerate.
2003-01-07 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/8707
* Makefile.am (distclean-multi): Fix.
* Makefile.in: Regenerate.
2003-01-06 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h (messages): Move ctor, dtor
definitions to..
(__timepunct): Same.
* config/locale/gnu/messages_members.h (messages): Add dtor, ctor
definitions. Conditionalize for GNU systems.
* config/locale/generic/messages_members.h (messages): Add dtor, ctor
definitions.
* config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
definitions. Conditionalize for GNU systems.
* config/locale/generic/time_members.h (messages): New. Add dtor, ctor
definitions.
* include/bits/localefwd.h (locale::facet::_S_c_name): Add.
* src/locale.cc: Define.
* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
Use it.
* config/locale/gnu/time_members.h: Use it.
* config/locale/gnu/messages_members.h: Use it.
* config/linker-map.gnu: Add locale::facets details.
* include/Makefile.am (target_headers_extra): Add time_members.h.
* include/Makefile.in: Regenerate.
* acinclude.m4: Export CTIME_H.
* aclocal.m4: Regenerate.
* configure: Regnerate.
2003-01-06 Paolo Carlini <pcarlini@unitus.it>
* src/codecvt.cc
(codecvt<char, char, mbstate_t>::do_in, do_out):
Tweak parameters to avoid unused parameter warnings.
2003-01-06 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9151
* include/bits/locale_facets.cc (num_put::_M_convert_float):
Limit __prec to digits10 + 2, not digits10 + 1, taking into
account the possibility of %{g,G} conversion specifiers
inside _S_format_float.
* testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
2003-01-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
libstdc++-v3-list-sourcefiles): Additionally handle files one
level deeper in glob patterns.
* testsuite/27_io/istream_extractor_arith.cc: Delete, split...
* testsuite/27_io/istream_extractor_arith/01.cc,
testsuite/27_io/istream_extractor_arith/02.cc,
testsuite/27_io/istream_extractor_arith/03.cc,
testsuite/27_io/istream_extractor_arith/06.cc,
testsuite/27_io/istream_extractor_arith/07.cc,
testsuite/27_io/istream_extractor_arith/08.cc,
testsuite/27_io/istream_extractor_arith/09.cc,
testsuite/27_io/istream_extractor_arith/10.cc,
testsuite/27_io/istream_extractor_arith/11.cc,
testsuite/27_io/istream_extractor_arith/12.cc,
testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
* testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
sparc*-*-solaris2*.
2003-01-05 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9168
* src/codecvt.cc
(codecvt<char, char, mbstate_t>::do_in, do_out):
Implement the resolution of DR19 (TC).
* testsuite/22_locale/codecvt_members_char_char.cc
(test01): Tweak.
2003-01-02 Jason Merrill <jason@redhat.com>
* config/cpu/i486/atomicity.h (__exchange_and_add, __atomic_add):
*__mem is also an output.
* config/cpu/m68k/atomicity.h (__exchange_and_add): Likewise.
Copyright (C) 2003 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.