Commit Graph

2029 Commits

Author SHA1 Message Date
Benjamin Kosnik 9540958eff re PR libstdc++/10081 (basic_ios::_M_cache_locale leaves NULL members in the face of unknown locales)
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.

From-SVN: r72728
2003-10-20 22:11:40 +00:00
Rainer Orth 27d54b2a6c ffi.c: Use _ABIN32, _ABIO32 instead of external _MIPS_SIM_NABI32, _MIPS_SIM_ABI32.
libffi:
	* src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external
	_MIPS_SIM_NABI32, _MIPS_SIM_ABI32.

	libstdc++-v3:
	* config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
	of external _MIPS_SIM_ABI32.

	boehm-gc:
	* mips_sgi_mach_dep.s: Use _ABIO32 instead of external
	_MIPS_SIM_ABI32.

	gcc:
	* config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Define _ABIO32.
	Use it in _MIPS_SIM definition.
	* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Likewise.

From-SVN: r72713
2003-10-20 18:37:22 +00:00
Phil Edwards 65fc9769d5 configure.ac: Fix comment typo.
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__.

From-SVN: r72710
2003-10-20 18:27:17 +00:00
David Edelsohn 47395a24e6 re PR libstdc++/12506 (build failure of libstdc++ due to Makefile error)
PR other/12506
        * configure.host (aix4,aix*): Define os_include_dir to os/generic.

From-SVN: r72684
2003-10-19 16:58:22 -04:00
Andreas Tobler 8f4c7b679c locale.cc (locale::_S_initialize): Re-apply workaround a confusion of the use of the gthr API when...
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.

From-SVN: r72679
2003-10-19 17:43:44 +00:00
Benjamin Kosnik c755e77d63 Makefile.am: Add new files.
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.

From-SVN: r72607
2003-10-17 14:47:30 +00:00
Paolo Carlini fb68dabb19 Remove PR 8610 heading mistakenly added to last ChangeLog entry.
From-SVN: r72584
2003-10-16 22:53:32 +00:00
Benjamin Kosnik 4c4809c175 [multiple changes]
2003-10-16  Petur Runolfsson  <peturr02@ru.is>

	PR libstdc++/8610
	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.

From-SVN: r72582
2003-10-16 22:37:53 +00:00
Benjamin Kosnik 5d78fe723c acconfig.h: Add HAVE_DRAND48.
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.

From-SVN: r72575
2003-10-16 21:01:01 +00:00
Paolo Carlini 0392ff984f locale.cc (locale::locale(const char*)): ...
2003-10-16  Paolo Carlini  <pcarlini@suse.de>

	* src/locale.cc (locale::locale(const char*)): ... one
	more comparison missed in the previous commit.

From-SVN: r72574
2003-10-16 20:36:45 +00:00
Benjamin Kosnik d2f663d109 acconfig.h: Add HAVE_DRAND48 and HAVE_ISATTY.
2003-10-16  Benjamin Kosnik  <bkoz@redhat.com>

        * acconfig.h: Add HAVE_DRAND48 and HAVE_ISATTY.
	* aclocal.m4: Regenerated.
	* config.h.in: Regenerated.

From-SVN: r72573
2003-10-16 20:33:43 +00:00
Bernardo Innocenti 068c84e3b5 atomicity.h (__exchange_and_add): Use TAS on __mcf5400__.
* 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.

From-SVN: r72570
2003-10-16 21:47:45 +02:00
Paolo Carlini eaed902bf7 locale.cc (locale::locale(const char*)): Tweak a couple of comparisons to use basic_string operators.
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.

From-SVN: r72554
2003-10-16 17:53:49 +00:00
Paolo Carlini f991b1d853 re PR libstdc++/12540 (Memory leak in locale::locale(const char*))
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.

From-SVN: r72553
2003-10-16 17:24:07 +00:00
Jeff Bailey 84e72d83e3 re PR c++/12562 (Enable libstdc++-v3 compliation on *-gnu*)
2003-10-14  Jeff Bailey  <jbailey@nisa.net>

       PR libstdc++/12562
       * crossconfig.m4: Share the config between *-linux* and *-gnu*.
       * configure: Regenerate.

From-SVN: r72510
2003-10-14 19:17:34 -07:00
Carlo Wood be3faf8996 re PR libstdc++/12600 (Demangler goes in infinite loop for certain invalid mangled names.)
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.

From-SVN: r72480
2003-10-14 17:46:19 +00:00
Paolo Carlini 1638f5c9d0 re PR libstdc++/11480 (std::unique calls predicate too many times)
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.

From-SVN: r72478
2003-10-14 17:15:27 +00:00
Paolo Carlini 42db0f21ef localename.cc (_M_replace_categories, [...]): Const-ify a couple of variables.
2003-10-14  Paolo Carlini  <pcarlini@unitus.it>

	* src/localename.cc (_M_replace_categories, M_replace_facet):
	Const-ify a couple of variables.

From-SVN: r72472
2003-10-14 14:56:29 +00:00
Petur Runolfsson 9dccaa6bb6 locale.cc (locale::_S_initialize): Workaround a confusion of the use of the gthr API when...
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.

Co-Authored-By: Andreas Tobler <a.tobler@schweiz.ch>

From-SVN: r72458
2003-10-14 06:47:10 +02:00
Petur Runolfsson a62e73117f re PR libstdc++/11460 (Incorrect use of int_type in strstreambuf::pbackfail)
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.

Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>

From-SVN: r72405
2003-10-12 20:03:18 +00:00
Paolo Carlini f5677b1560 codecvt_specializations.h: Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
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.

From-SVN: r72392
2003-10-12 10:12:09 +00:00
Andreas Tobler c411fdaebf PR libstdc++/11844/11740 (cont)
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.

Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>

From-SVN: r72389
2003-10-12 07:34:30 +00:00
Bernardo Innocenti 796d7a8605 crossconfig.m4 (*-uclinux*): New target.
* crossconfig.m4 (*-uclinux*): New target.
	* configure: Regenerate.

From-SVN: r72325
2003-10-11 05:45:07 +02:00
Paolo Carlini 6b61bca48f 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.

From-SVN: r72302
2003-10-10 17:10:47 +00:00
Benjamin Kosnik 5aaa21080b linker-map.gnu: Make more *_type_info bits visible.
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:🆔:_S_highwater can be removed from the export list.
	* src/locale.cc (locale:🆔:_M_id): Define.

From-SVN: r72287
2003-10-09 21:17:11 +00:00
Andreas Tobler 64833be059 libstdc++.exp: Set LD_LIBRARY_PATH_64 for SPARC64.
2003-10-09  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
	SPARC64.

From-SVN: r72282
2003-10-09 21:22:38 +02:00
Paolo Carlini 2f800bccec re PR libstdc++/11844 (Incorrect values of ctype_base::alnum and ctype_base::graph)
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.

From-SVN: r72281
2003-10-09 19:10:56 +00:00
Benjamin Kosnik 93d046861d [multiple changes]
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.

From-SVN: r72272
2003-10-09 16:53:54 +00:00
Petur Runolfsson 1a139c5924 re PR libstdc++/9874 (filebuf::seekpos fails if codecvt::encoding() <= 0)
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.

From-SVN: r72268
2003-10-09 16:11:40 +00:00
Paolo Carlini a761195bfd locale_facets.tcc: More minor cosmetic changes and const-ifications of some variables.
2003-10-08  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/locale_facets.tcc: More minor cosmetic
	changes and const-ifications of some variables.

From-SVN: r72226
2003-10-08 14:20:42 +00:00
Paolo Carlini 905df1fb20 locale_facets.tcc: 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.

From-SVN: r72190
2003-10-07 10:34:47 +00:00
Paolo Carlini ba9b12d1d2 re PR libstdc++/11740 (ctype<wchar_t>::do_is(mask, wchar_t) doesn't handle multiple bits in mask.)
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.

From-SVN: r72167
2003-10-06 22:32:59 +00:00
Paolo Carlini e4f7d0a18f locale_facets.tcc (__pad<>::_S_pad): Improve performance-wise...
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.

From-SVN: r72164
2003-10-06 19:46:21 +00:00
Paolo Carlini 5b577977ea 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.

From-SVN: r72112
2003-10-05 15:08:46 +00:00
Paolo Carlini dff186db09 locale_facets.tcc (num_get::_M_extract_float): Constify a couple of variables.
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++.

From-SVN: r72093
2003-10-04 14:59:32 +00:00
Paolo Carlini 2811b82372 stdio_sync_filebuf.h: Don't include the whole <fstream>, only <streambuf> and <cstdio>.
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>.

Co-Authored-By: Petur Runolfsson <peturr02@ru.is>

From-SVN: r72090
2003-10-04 10:51:34 +00:00
Paolo Carlini 184b434cf8 re PR libstdc++/12206 (Segmentation fault in basic_filebuf::seekoff)
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.

From-SVN: r72087
2003-10-04 07:52:02 +00:00
Harald Boehme cafc73370e re PR libstdc++/12451 (missing(late) class forward declaration in cxxabi.h)
2003-10-02  Harald Boehme  <boehme@informatik.hu-berlin.de>

	PR libstdc++/12451
	* libsupc++/cxxabi.h: Move forward declaration of __class_type_info.

From-SVN: r72059
2003-10-03 00:36:45 +00:00
Benjamin Kosnik bb1b12ec0a locale_classes.h (locale::facet::_S_get_c_name): Add.
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.

From-SVN: r72050
2003-10-02 23:06:13 +00:00
Paolo Carlini 8dcaff2850 re PR libstdc++/12232 (Incorrect handling of openmode argument in filebuf::seekoff and seekpos)
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.

From-SVN: r72048
2003-10-02 20:37:06 +00:00
Benjamin Kosnik 5c109a1758 locale.cc (locale::_S_initialize): Use __gthread_active_p.
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.

From-SVN: r72045
2003-10-02 19:02:58 +00:00
Benjamin Kosnik 8ae8113683 [multiple changes]
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.

From-SVN: r72040
2003-10-02 16:56:39 +00:00
Carlo Wood 4a035cf7ea demangle.h (demangle<Allocator>::symbol(char const*)): Decode symbols that start with _GLOBAL_[ID]_ differently...
* 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.

From-SVN: r72027
2003-10-02 14:29:26 +00:00
Paolo Carlini 86b4ab7326 12438.cc: Use __gnu_test::try_named_locale("").
2003-10-02  Paolo Carlini  <pcarlini@unitus.it>

	* testsuite/22_locale/locale/cons/12438.cc: Use
	__gnu_test::try_named_locale("").

From-SVN: r72024
2003-10-02 12:16:31 +00:00
Rainer Orth 222a5b1d67 linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
* 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.

From-SVN: r71990
2003-10-01 20:45:59 +00:00
Nathan Myers e39dd1ce52 locale_facets.tcc (time_put::put): Avoid expensive *__s++, in favor of *__s, ++__s.
2003-10-01  Nathan Myers  <ncm@cantrip.org>

	* include/bits/locale_facets.tcc (time_put::put): Avoid
	expensive *__s++, in favor of *__s, ++__s.

From-SVN: r71980
2003-10-01 16:58:38 +00:00
Paolo Carlini 530ce5517c locale_facets.tcc (time_put::put): Minor tweak to the previous commit.
2003-10-01  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/locale_facets.tcc (time_put::put): Minor
	tweak to the previous commit.

From-SVN: r71977
2003-10-01 15:43:07 +00:00
Paolo Carlini 52a16d0815 re PR libstdc++/12439 (Problems in time_put::put)
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.

From-SVN: r71976
2003-10-01 14:32:05 +00:00
Paolo Carlini ae7c3ba55f stl_algo.h: Minor cosmetic reformattings.
2003-09-30  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/stl_algo.h: Minor cosmetic reformattings.

From-SVN: r71950
2003-09-30 20:16:28 +00:00
Paolo Carlini cbc6c296e6 stl_algo.h (search_n): Tweak, to spare the first --__n.
2003-09-30  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/stl_algo.h (search_n): Tweak, to spare the
	first --__n.

From-SVN: r71946
2003-09-30 17:03:52 +00:00