Commit Graph

277 Commits

Author SHA1 Message Date
Benjamin Kosnik
3a9ebf3ced ostream_inserter_char.cc (test07): New.
2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/27_io/ostream_inserter_char.cc (test07): New.

2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
	const, tweak.
	(basic_ios::fill(char_type)): Use fill().
	* include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
	(basic_ios::narrow): Same.
	(basic_ios::_M_cache_facets): Explicitly set cached facets to zero
	if they are invalid.
	(basic_ios::init): Comment.
	* testsuite/27_io/ios_init.cc (test02): New.

From-SVN: r49205
2002-01-25 06:36:32 +00:00
Phil Edwards
6b20f9b59a stl_tempbuf.h (_Temporary_buffer): Add doxygen hook.
2002-01-24  Phil Edwards  <pme@gcc.gnu.org>

	* include/bits/stl_tempbuf.h (_Temporary_buffer):  Add doxygen hook.
	* include/bits/stl_algo.h:  Include stl_tempbuf.h.
	* include/ext/memory:  Do not include stl_tempbuf.h.
	(temporary_buffer):  Add doxygen hook.
	(__get_temporary_buffer, get_temporary_buffer,
	return_temporary_buffer):  Move back to std:: header...
	* include/std/std_memory.h:  ...here.  Do not include stl_tempbuf.h.
	* include/ext/rope:  Do not include stl_tempbuf.h.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/std/std_algorithm.h:  Likewise.
	* testsuite/20_util/temporary_buffer.cc:  New file.

From-SVN: r49199
2002-01-25 04:14:40 +00:00
Benjamin Kosnik
b6a95741e8 num_put_members_wchar_t.cc (test03): Use _GLIBCPP_HAVE_SETENV.
2002-01-24   Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use
	_GLIBCPP_HAVE_SETENV.
	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same.
	* testsuite/22_locale/collate_members_char.cc (test02): Same.
	* testsuite/22_locale/ctype_members_char.cc (test03): Same.
	* testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same.
	* testsuite/22_locale/messages_members_char.cc (test02): Same.
	* testsuite/22_locale/moneypunct_members_char.cc (test02): Same.
	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same.
	* testsuite/22_locale/money_put_members_char.cc (test04): Same.
	* testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same.
	* testsuite/22_locale/num_get_members_char.cc (test03): Same.
	* testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same.
	* testsuite/22_locale/numpunct_members_char.cc (test02): Same.
	* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same.
	* testsuite/22_locale/time_get_members_char.cc (test07): Same.
	* testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same.
	* testsuite/22_locale/time_put_members_char.cc (test03): Same.
	* testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same.
	* testsuite/22_locale/num_put_members_char.cc (test03): Same.
	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

From-SVN: r49191
2002-01-24 20:46:34 +00:00
Loren J. Rittle
ddd6960743 pthread1.cc: New test.
* testsuite/thread/pthread1.cc: New test.
	* testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347.
	* testsuite/thread/pthread3.cc: Likewise.
	* testsuite/thread/pthread4.cc: New test adapted from
	http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
	* testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464.
	* testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444.

From-SVN: r49173
2002-01-24 07:35:11 +00:00
Paolo Carlini
b4ae79f745 ios_manip_basefield.cc: Enable test02.
2002-01-22  Paolo Carlini  <pcarlini@unitus.it>

	* testsuite/27_io/ios_manip_basefield.cc: Enable test02.
	* testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
	* testsuite/27_io/ostream_inserter_char.cc: Enable test01.
	* testsuite/27_io/ostream_inserter_other.cc: Enable test04.

From-SVN: r49116
2002-01-23 01:12:10 +00:00
Benjamin Kosnik
4b9aaf6379 Audit for LANG independence.
2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>

	Audit for LANG independence.
	* include/bits/localefwd.h: Tweaks.
	* include/bits/locale_facets.tcc (money_get::do_get(long double)):
	Use __convert_to_v.
	(time_get::do_get_year): Same.
	(__convert_from_v): Add.
	(num_put::_M_convert_float): Use.
	(num_put::_M_convert_int): Same.
	(money_put::do_put): Same.

	* src/locale-inst.cc: Add instantiations for __convert_from_v.
	* config/locale/time_members_gnu.cc: Cleanup setlocale usage.
	* config/locale/time_members_generic.cc:
	* config/locale/messages_members_gnu.cc: Same.
	* config/locale/messages_members_gnu.h: Same.

	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
	* testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
	* testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
	* testsuite/22_locale/collate_members_char.cc (test02): New.
	* testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/ctype_members_char.cc (test03): New.
	* testsuite/22_locale/messages_members_char.cc (test02): New.
	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
	* testsuite/22_locale/moneypunct_members_char.cc (test02): New.
	* testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
	* testsuite/22_locale/money_get_members_char.cc (test04): New.
	* testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
	* testsuite/22_locale/money_put_members_char.cc (test04): New.
	* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
	* testsuite/22_locale/numpunct_members_char.cc (test02): New.
	* testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/time_put_members_char.cc (test03): New.
	* testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
	* testsuite/22_locale/time_get_members_char.cc (test07): New.
	* testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/num_get_members_char.cc (test03): New.
	* testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/num_put_members_char.cc (test03): New.

	* testsuite/22_locale/time_get_members_char.cc: Fixups for global
	locale issues.
	* testsuite/22_locale/time_get_members_char.cc: Same.

2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/5280
	* include/bits/localefwd.h: Tweak comments.
	* include/bits/locale_facets.h (__convert_to_v): Add.
	* include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
	(num_get::do_get(float)): Same.
	(num_get::do_get(long double)): Same.
	(num_get::do_get(bool)): Same.
	(num_get::do_get(long)): Same.
	(num_get::do_get(long long)): Same.
	(num_get::do_get(unsigned int)): Same.
	(num_get::do_get(unsigned short)): Same.
	(num_get::do_get(unsigned long)): Same.
	(num_get::do_get(unsigned long long)): Same.
	* config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
	* config/locale/c_locale_generic.cc: Same.

From-SVN: r49108
2002-01-22 23:09:04 +00:00
Loren J. Rittle
46827fdd40 numeric_limits.cc (test_extrema<long double>): Add specialization for FreeBSD systems only to avoid losing test only due to...
* testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
	Add specialization for FreeBSD systems only to avoid losing test
	only due to extra precision unmentioned in system headers.

From-SVN: r48997
2002-01-18 22:07:27 +00:00
Nick Clifton
c429752231 fix typo in comment
From-SVN: r48973
2002-01-17 23:37:43 +00:00
Peter Schmid
715e561616 ctor_copy_dtor.cc: Remove check.
2002-01-17  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

	* testsuite/22_locale/ctor_copy_dtor.cc: Remove check.

From-SVN: r48967
2002-01-17 22:29:44 +00:00
Benjamin Kosnik
8f7a401515 stl_iterator.h (reverse_iterator::_M_current): Deuglify, should be current.
2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
            Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

	* include/bits/stl_iterator.h (reverse_iterator::_M_current):
	Deuglify, should be current.
	(back_insert_iterator::_M_container): Deuglify, should be container.
	(front_insert_iterator::_M_container): Same.
	(insert_iterator::_M_container): Same.
	* testsuite/24_iterators/reverse_iterator.cc: Add check.
	* testsuite/24_iterators/back_insert_iterator.cc: Add check.
	* testsuite/24_iterators/front_insert_iterator.cc: Same.
	* testsuite/24_iterators/insert_iterator.cc: Same.

2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.h (ctype<char>::classic_table): Make
	static.
	(ctype<char>::_M_ctable): Make static, change name to _S_ctable.
	* config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
	* config/os/newlib/bits/ctype_noninline.h: Same.
	* config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
	* config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
	* config/os/hpux/bits/ctype_noninline.h: Same.
	* config/os/djgpp/bits/ctype_noninline.h: Same.
	* config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
	* config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
	* config/os/aix/bits/ctype_noninline.h: Same.

	Testcase by Dietmar K�hl via Peter Schmid
	* testsuite/22_locale/ctype_members_char.cc (char>): Add test for
	classic_table().

Co-Authored-By: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>

From-SVN: r48938
2002-01-17 03:59:42 +00:00
Benjamin Kosnik
aefb3380dd signbitl.c: Copyright years as list, not range.
2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>

	* libmath/signbitl.c: Copyright years as list, not range.
	* libmath/Makefile.am: Same.
	* libmath/Makefie.in: Regenerate.
	* libmath/signbit.c: Same.
	* libmath/nan.c: Same.
	* libmath/copysignf.c: Same.
	* libmath/signbitf.c: Same.
	* testsuite/22_locale/money_get_members_char.cc: Same.
	* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
	* testsuite/22_locale/money_put_members_char.cc: Same.
	* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
	* testsuite/22_locale/time_get_members_char.cc: Same.
	* testsuite/22_locale/time_get_members_wchar_t.cc: Same.
	* testsuite/22_locale/time_put_members_char.cc: Same.
	* testsuite/22_locale/time_put_members_wchar_t.cc: Same.
	* testsuite/21_strings/nonmember.cc: Same.
	* testsuite/21_strings/compare.cc: Same.
	* testsuite/27_io/stringstream.cc: Same.
	* testsuite/27_io/stringbuf.cc: Same.
	* testsuite/27_io/filebuf.cc: Same.
	* testsuite/27_io/ios_manip_basefield.cc: Same.
	* testsuite/27_io/ios_manip_fmtflags.cc: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/generic_shadow.h: Same.
	* include/bits/gslice_array.h: Same.
	* include/bits/gslice.h: Same.
	* include/bits/indirect_array.h: Same.
	* include/bits/slice_array.h: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/streambuf_iterator.h: Same.
	* include/bits/valarray_array.tcc: Same.
	* include/bits/valarray_meta.h: Same.
	* include/bits/valarray_array.h: Same.
	* config/os/mingw32/bits/ctype_noninline.h: Same.
	* config/os/mingw32/bits/ctype_base.h: Same.
	* config/os/hpux/bits/ctype_noninline.h: Same.
	* config/os/hpux/bits/ctype_base.h: Same.
	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
	* config/os/gnu-linux/bits/ctype_base.h: Same.
	* config/os/generic/bits/ctype_noninline.h: Same.
	* config/os/generic/bits/ctype_base.h: Same.

	* libsupc++/tinfo.h: Tweaks.

From-SVN: r48922
2002-01-16 19:57:39 +00:00
Benjamin Kosnik
def9746c13 num_put_members_wchar_t.cc (test02): Same.
2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
	* testsuite/22_locale/num_put_members_char.cc (test01): Tweak.
	* testsuite/22_locale/ctype_members_char.cc: Tweak.

From-SVN: r48902
2002-01-16 06:11:41 +00:00
Benjamin Kosnik
c22e177db7 num_put_members_wchar_t.cc (test02): Same.
2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
	* testsuite/22_locale/num_put_members_char.cc (test01): Tweak.

From-SVN: r48901
2002-01-16 06:06:59 +00:00
Benjamin Kosnik
bed9a20d55 locale_facets.tcc (num_put::do_put(bool): Fix.
2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
	(num_put::do_put(void*)): Fix.
	* testsuite/22_locale/num_put_members_char.cc (test02): Add.
	* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
	* testsuite/22_locale/num_get_members_char.cc (test02): Add
	long double, void, bool types.
	* testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.

From-SVN: r48892
2002-01-16 00:51:45 +00:00
David Billinghurst
80a86f2176 2002-01-08 David Billinghurst <David.Billinghurst@riotinto.com>
* testsuite/26_numerics/c99_classification_macros_c.cc
	Remove dg-error and dg-excess-errors comments.

From-SVN: r48862
2002-01-15 04:29:56 +00:00
Benjamin Kosnik
8f88da406b locale_facets.tcc (time_put::put): Correct output iterator positions.
2002-01-14  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc (time_put::put): Correct output
	iterator positions.
	* testsuite/22_locale/time_put_members_char.cc (test02): Add.
	* testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
	* testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
	* testsuite/22_locale/time_get_members_char.cc (test06): Add.

From-SVN: r48861
2002-01-15 04:23:46 +00:00
Paolo Carlini
c68cd521fa 2002-01-14 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers  <ncm@cantrip.org>

	* include/bits/basic_string.h
	(replace(__pos, __n1, __s, __n2)): Optimize by avoiding
	temporaries (i.e., call _M_replace_safe) when possible.
	(replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
	(replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
	(replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
	(replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
	(replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
	* include/bits/basic_string.tcc
	(replace(__pos1, __n1, __str, __pos2, __n2)): Call
	replace(__pos, __n1, __s, __n2).
	* testsuite/21_strings/replace.cc (test03): New testcases.

	* include/bits/basic_string.h (insert(__pos, __s, __n)):
	Adjust comparison wrt overflow.

Co-Authored-By: Nathan Myers <ncm@cantrip.org>

From-SVN: r48834
2002-01-14 19:04:15 +00:00
Benjamin Kosnik
ae72572be9 locale_facets.tcc (money_put::do_put(string): Correct output iterator value.
2002-01-12  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc (money_put::do_put(string):
	Correct output iterator value.
	* testsuite/22_locale/money_put_members_char.cc (test03): Add.
	* testsuite/22_locale/money_put_members_wchar_t.cc: Same.

From-SVN: r48809
2002-01-13 04:27:18 +00:00
Benjamin Kosnik
87a9c33cb1 locale_facets.tcc (money_get::do_get(string)): Check for zero-length negative sign before adding it to output string.
2002-01-11  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc (money_get::do_get(string)):
	Check for zero-length negative sign before adding it to output
	string.
	(money_get::do_get(long double)): Return beg.
	* testsuite/22_locale/money_get_members_char.cc (test02): Add
	iterator checks.
	* testsuite/22_locale/money_get_members_wchar_t.cc: Same.

From-SVN: r48777
2002-01-11 20:12:02 +00:00
David Seymour
3ac3829f8e locale_facets.h (num_get<>): Return advanced iterator for _M_extract_float and _M_extract_int
2002-01-10  David Seymour  <seymour_dj@yahoo.com>

	libstdc++/5331
	* include/bits/locale_facets.h (num_get<>): Return advanced iterator
	for _M_extract_float and _M_extract_int
	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
	(num_get<>::_M_extract_int): Likewise, all callers changed
	* testsuite/22_locale/num_get_members_char.cc: Testcase

From-SVN: r48765
2002-01-11 05:14:47 +00:00
David Seymour
631ba05e3d locale_facets.h (num_get<>): Return advanced iterator for _M_extract_float and _M_extract_int
2002-01-10  David Seymour  <seymour_dj@yahoo.com>

	* include/bits/locale_facets.h (num_get<>): Return advanced iterator
	for _M_extract_float and _M_extract_int
	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
	(num_get<>::_M_extract_int): Likewise, all callers changed
	* testsuite/22_locale/num_get_members_char.cc: Testcase

From-SVN: r48764
2002-01-11 05:07:22 +00:00
Benjamin Kosnik
9fbcb61abb [multiple changes]
2002-01-08  Benjamin Kosnik  <bkoz@redhat.com>

        libstdc++/2913
        libstdc++/4879
	* include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
	return value of _M_file->sync().
	(filebuf::showmanyc): Check for is_open.
	* include/std/fstream (filebuf::sync): Tweak.
	* testsuite/27_io/filebuf.cc: Tweak.

2002-01-08  John Fardo  <jfardo@laurelnetworks.com>
	    Brad Garcia  <garsh@attbi.com>

	* testsuite/27_io/filebuf_members.cc: Add test.

From-SVN: r48654
2002-01-08 19:57:01 +00:00
David Billinghurst
ab10a269bb testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS testsuite/lib/prune.exp...
2002-01-07  David Billinghurst <David.Billinghurst@riotinto.com>

	* testsuite_flags.in:  Add -fmessage-length=0 to CXXFLAGS
	testsuite/lib/prune.exp: Delete lines ":In function ..."
	from compiler output
	testsuite/23_containers/map_operators.cc: Remove
	dg-excess-errors comment
	testsuite/23_containers/set_operators.cc: Likewise

From-SVN: r48590
2002-01-07 00:07:27 +00:00
Paolo Carlini
3b007b5d6b stl_tree.h (rb_tree): Move to...
2002-01-04  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/stl_tree.h (rb_tree):  Move to...
	* include/ext/rb_tree:  ...here, new file.
        * include/Makefile.am (ext_headers):  Add new file.
        * include/Makefile.in:  Regenerate.
        * include/bits/stl_tempbuf.h (get_temporary_buffer + helper,
	return_temporary_buffer, struct temporary_buffer):  Move to...
        * include/ext/memory:  ...here.
        * testsuite/ext/headers.cc:  Include <ext/rb_tree>.
	* include/backward/tempbuf.h:  Include <ext/memory>, tweak.
	* include/backward/tree.h:  Include <ext/rb_tree), tweak.

From-SVN: r48538
2002-01-04 17:02:28 +00:00
Paolo Carlini
01b0d4b85a stl_numeric.h (power + helpers, iota): Move to...
2002-01-02  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/stl_numeric.h (power + helpers, iota):  Move to...
	* include/ext/numeric:  ...here, new file.
        * include/bits/stl_function.h (identity_element, unary_compose,
	binary_compose, compose1, compose2, identity, select1st,
	select2nd, project1st + helper, project2nd + helper,
	constant_void_fun + helper, constant_unary_fun + helper,
	costant_binary_fun + helper, constant0, constant1, constant2,
	subtractive_rng, mem_fun1, mem_fun1_ref):  Move to...
        * include/ext/functional:  ...here, new file.
        * include/Makefile.am (ext_headers):  Add new files.
        * include/Makefile.in:  Regenerate.
        * testsuite/ext/headers.cc:  Include <ext/numeric> and
	<ext/functional>.
	* include/backward/algo.h:  Include <ext/numeric>, tweak.
	* include/backward/function.h:  Include <ext/functional>, tweak.
        * include/ext/ropeimpl.h:  Include <ext/numeric>.

From-SVN: r48519
2002-01-03 19:02:18 +00:00
David Billinghurst
dd37368c6d prune.exp: Correct regular expression for -ffunction-sections
2002-01-03  David Billinghurst <David.Billinghurst@riotinto.com>

	* testsuite/lib/prune.exp: Correct regular expression for
	-ffunction-sections

From-SVN: r48511
2002-01-03 14:25:14 +00:00
Phil Edwards
bf7edb60c8 re PR libstdc++/2054 (g++-3 rejects legal code, accepted by g++-2.95.2 (functors))
2002-01-02  Phil Edwards  <pme@gcc.gnu.org>

	* include/bits/stl_algo.h (upper_bound, equal_range, binary_search):
	Change concept checks, as with lower_bound and PR 2054.
	* testsuite/ext/concept_checks.cc:  Expand test to include those.

From-SVN: r48492
2002-01-03 04:44:07 +00:00
Paolo Carlini
f53d0ff143 stl_algobase.h (copy_n + helpers, [...]): Move to...
2002-01-02  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/stl_algobase.h (copy_n + helpers,
	lexicographical_compare_3way + helpers):  Move to...
	* include/ext/algorithm:  ...here.
        * include/bits/stl_uninitialized.h (uninitialized_copy_n +
        helpers):  Move to...
        * include/ext/memory:  ...here, new file.
        * include/Makefile.am (ext_headers):  Add new file.
        * include/Makefile.in:  Regenerate.
        * testsuite/ext/headers.cc:  Include <ext/memory>.
	* include/backward/algobase.h:  Include <ext/memory> and
	<ext/algorithm>, tweak.
        * include/ext/ropeimpl.h:  Include <ext/memory>, tweak.
	* include/ext/stl_rope.h:  Include <ext/memory>, tweak.

From-SVN: r48467
2002-01-02 12:16:56 +00:00
Paolo Carlini
6d66e50d52 iterator: Add #include <bits/std_iterator.h>, tweak.
2001-12-31  Paolo Carlini  <pcarlini@unitus.it>

	* include/ext/iterator:  Add #include <bits/std_iterator.h>, tweak.
	* testsuite/ext/headers.cc:  Add <ext/iterator>.

From-SVN: r48430
2001-12-31 19:30:24 +00:00
Paolo Carlini
e538847e1c hash_map: Move into __gnu_cxx, tweak, add using declarations.
2001-12-31  Paolo Carlini  <pcarlini@unitus.it>

	* include/ext/hash_map:  Move into __gnu_cxx,
	tweak, add using declarations.
	* include/ext/hash_set:  Ditto.
	* include/ext/ropeimpl.h:  Ditto.
	* include/ext/stl_hash_fun.h:  Ditto.
	* include/ext/stl_hashtable.h:  Ditto.
	* include/ext/stl_rope.h:  Ditto.
	* src/ext-inst.cc: Tweak.
	* testsuite/ext/rope.cc: Tweak.

From-SVN: r48422
2001-12-31 10:22:00 +00:00
Phil Edwards
be3996918f re PR libstdc++/2054 (g++-3 rejects legal code, accepted by g++-2.95.2 (functors))
2001-12-28  Phil Edwards  <pme@gcc.gnu.org>

	PR libstdc++/2054
	* include/bits/stl_algo.h (lower_bound):  Relax concept checks.
	* testsuite/ext/concept_checks.cc:  New file.

From-SVN: r48351
2001-12-28 21:57:47 +00:00
Paolo Carlini
2c1bc4ebc9 stl_algo.h (count returning void, [...]): Move to...
2001-12-28  Paolo Carlini  <pcarlini@unitus.it>

        * include/bits/stl_algo.h (count returning void,
        count_if returning void, __random_sample, random_sample,
        random_sample_n, __is_heap, is_heap, is_sorted):  Move to...
        * include/ext/algorithm:  ...here, new file.
	* include/Makefile.am (ext_headers):  Add new file.
        * include/Makefile.in:  Regenerate.
	* testsuite/ext/headers.cc:  Include <ext/algorithm>.

From-SVN: r48350
2001-12-28 18:46:54 +00:00
Paolo Carlini
bf95248579 basic_string.h (insert(__pos, __s, __n)): Optimize by avoiding temporaries and working in-place when possible.
2001-12-28  Paolo Carlini  <pcarlini@unitus.it>
            Nathan Myers  <ncm@cantrip.org>

	* include/bits/basic_string.h (insert(__pos, __s, __n)):
	Optimize by avoiding temporaries and working in-place when possible.
	(insert(__pos1, __str)): Call insert(__pos1, __str, __pos2, __n).
	(insert(__pos1, __str, __pos2, __n)): Call insert(__pos, __s, __n).
	* testsuite/21_strings/insert.cc (test02): New testcases.

Co-Authored-By: Nathan Myers <ncm@cantrip.org>

From-SVN: r48345
2001-12-28 14:00:18 +00:00
Phil Edwards
bb2ae697ab testsuite_hooks.h (gnu_counting_struct): Add.
2001-12-27  Phil Edwards  <pme@gcc.gnu.org>

	* testsuite/testsuite_hooks.h (gnu_counting_struct):  Add.
	* testsuite/23_containers/deque_ctor.cc:  New file.

From-SVN: r48332
2001-12-27 21:51:28 +00:00
Phil Edwards
2d53d9ebe7 re PR libstdc++/3829 (missing template instantiations)
2001-12-27  Phil Edwards  <pme@gcc.gnu.org>

	PR libstdc++/3829
	* src/misc-inst.cc:  Many additional I/O-related instantiations.
	* testsuite/27_io/instantiations.cc:  New file.

From-SVN: r48324
2001-12-27 07:26:00 +00:00
Benjamin Kosnik
f591eb23d1 insert_iterator.cc (test02): Add.
2001-12-26  Benjamin Kosnik  <bkoz@waller.constant.com>

	* testsuite/24_iterators/insert_iterator.cc (test02): Add.
	* testsuite/24_iterators/front_insert_iterator.cc (test02): Add.
	* testsuite/24_iterators/back_insert_iterator.cc (test02): Add.
	* testsuite/24_iterators/reverse_iterator.cc (test02): Add.

	* include/bits/stl_iterator.h (reverse_iterator): Uglify member
	current to _M_current.
	(back_insert_iterator): Ulify member container to _M_container.
	(front_insert_iterator): Same.
	(insert_iterator): Same.

From-SVN: r48318
2001-12-26 21:56:17 +00:00
David Billinghurst
c6d96f20fd libstdc++-v3-dg.exp: Append .exe to executable filenames
2001-12-19  David Billinghurst <David.Billinghurst@riotinto.com>

        libstdc++-v3/5148
        * testsuite/lib/libstdc++-v3-dg.exp:  Append .exe to
        executable filenames

From-SVN: r48167
2001-12-18 23:34:06 +00:00
David Billinghurst
9e78e45a8d prune.exp: New file
2001-12-17  David Billinghurst <David.Billinghurst@riotinto.com>

	libstdc++/5136
	* testsuite/lib/prune.exp: New file
	* testsuite/lib/libstdc++-v3-dg.exp: Use it

From-SVN: r48133
2001-12-17 22:39:00 +00:00
Phil Edwards
e9c46bb75e basic_file.h (__basic_file::fd): New function.
2001-12-17  Phil Edwards  <pme@gcc.gnu.org>

	* include/bits/basic_file.h (__basic_file::fd):  New function.
	* config/io/basic_file_stdio.h (__basic_file::fd):  Define.
	* include/bits/std_fstream.h (basic_filebuf::fd):  New function.
	* include/bits/fstream.tcc (basic_filebuf::fd):  Define.
	* testsuite/27_io/filebuf_members.cc (test_02):  New test.

From-SVN: r48107
2001-12-17 17:08:57 +00:00
Paolo Carlini
4b428ee570 assign.cc (test01): Add tests.
2001-12-16  Paolo Carlini  <pcarlini@unitus.it>

	* testsuite/21_strings/assign.cc (test01): Add tests.

From-SVN: r48078
2001-12-16 20:21:20 +00:00
Paolo Carlini
bd1f473825 2001-12-15 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers  <ncm@cantrip.org>

        * include/bits/basic_string.h
	(assign(__str, __pos, __n), assign(__s, __n)):  Optimize
	by avoiding unnecessary temporaries.
	(assign(__s)): Call assign(__s, __n).
	* include/bits/basic_string.tcc (_M_replace_safe): Adjust comment.
	* include/bits/std_string.h: include stl_function.h.
        * testsuite/21_strings/assign.cc (test02, test03): New tests.

Co-Authored-By: Nathan Myers <ncm@cantrip.org>

From-SVN: r48053
2001-12-16 01:02:17 +00:00
Benjamin Kosnik
def9790d51 Clean up initialization and simplfy caching of underlying "C" locale objects.
2001-12-14  Benjamin Kosnik  <bkoz@redhat.com>

	Clean up initialization and simplfy caching of underlying "C"
	locale objects.
	* src/localename.cc (locale::_Impl::_Impl(string, size_t):
	Unconditionally create __clocale object for all named locales,
	including "C" and "POSIX".
	* config/locale/c_locale_generic.cc
	(locale::facet::_S_create_c_locale): Always set __cloc to zero.
	* config/locale/c_locale_gnu.cc: Always delete.
	* include/bits/localefwd.h (locale::facet::_S_c_locale): New.
	* src/locale.cc (locale::classic()): Initialize
	locale::facet::_S_c_locale.
	(locale::facet::_S_c_locale): Define.

	* include/bits/locale_facets.h: Add ctype_byname<wchar_t> ctor
	specialization.
	* src/locale.cc: Add definition here.
	* config/os/gnu-linux/bits/ctype_inline.h: Tweak.
	* config/os/gnu-linux/bits/ctype_noninline.h: Adjust initializations.
	* include/bits/locale_facets.h (ctype<char>::_M_c_locale_ctype): Add.
	Adjust ctors, dtors.
	(ctype<char>::_M_toupper): Remove const&.
	(ctype<char>::_M_tolower): Remove const&.
	(ctype<char>::_M_ctable): Remove const&.

	* include/bits/locale_facets.h (collate): Clean up initialization
	of _M_c_locale_collate in ctors and dtors.
	* config/locale/collate_members_gnu.cc: Always use extended
	functions.

	* include/bits/locale_facets.h (messages): Clean up inits in ctor/dtor.
	(messages_byname): Same.
	* config/locale/messages_members_generic.h (messages::~messages):
	Remove.
	* config/locale/messages_members_gnu.h: Same.

	* include/bits/localefwd.h: Clean. Move dtor definitions to
	* src/locale.cc: Here.
	* testsuite/22_locale/facet.cc: Fix spelling.

	Named locale support for ctype<wchar_t>.
        * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add variable
        ctype_members_* bits.
        * aclocal.m4: Regenerate.
        * configure: Regenerate.
        * src/Makefile.am (sources): Add ctype.cc.
        * src/Makefile.in: Regenerate.
        * config/locale/ctype_members_generic.cc: New file.
        * config/locale/ctype_members_gnu.cc: New file.
        * src/locale.cc: Remove ctype<wchart_t> definitions.

From-SVN: r48034
2001-12-15 07:05:04 +00:00
Benjamin Kosnik
85230e5255 locale.cc (locale::locale(const char*)): Deal with locales named "".
2001-12-13  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3679
	* src/locale.cc (locale::locale(const char*)): Deal with locales
	named "".
	* testsuite/22_locale/ctor_copy_dtor.cc (test01): Modify.

From-SVN: r47968
2001-12-13 11:12:56 +00:00
Paolo Carlini
897bb55fe3 ropeimpl.h (rope::_S_leaf_concat_char_iter, [...]): Adjust implicit typename.
2001-12-12  Paolo Carlini  <pcarlini@unitus.it>

	* include/ext/ropeimpl.h (rope::_S_leaf_concat_char_iter,
	_S_destr_leaf_concat_char_iter, _S_tree_concat, _S_concat_char_iter,
	_S_destr_concat_char_iter, _S_concat, _S_substring, _S_balance)
	: Adjust implicit typename.
	* include/ext/stl_rope.h (_Rope_iterator::operator=, rope::npos):
	Adjust implicit typename.
	* testsuite/27_io/streambuf.cc: Adjust implicit typename.

From-SVN: r47958
2001-12-13 00:41:03 +00:00
Benjamin Kosnik
9e5c7dba50 Named locale support for ctype<char>.
2001-12-12  Benjamin Kosnik  <bkoz@redhat.com>

	Named locale support for ctype<char>.
	* config/locale/c_locale_gnu.h (_GLIBCPP_C_LOCALE_GNU): New.
	* config/os/gnu-linux/bits/ctype_noninline.h (ctype<char>): Add
	definitions for alternate constructor.
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
	* config/os/newlib/bits/ctype_noninline.h (ctype): Same.
	* config/os/irix/irix6.5/bits/ctype_noninline.h (ctype): Same.
	* config/os/irix/irix5.2/bits/ctype_noninline.h (ctype): Same.
	* config/os/hpux/bits/ctype_noninline.h (ctype): Same.
	* config/os/generic/bits/ctype_noninline.h (ctype): Same.
	* config/os/djgpp/bits/ctype_noninline.h (ctype): Same.
	* config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
	* config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
	* config/os/aix/bits/ctype_noninline.h (ctype): Same.
	* include/bits/locale_facets.h (ctype<_CharT>): Remove dummy
	definitions for all virtual functions. These are now explicitly
	undefined for non-required factets, ie any non-char, non-wchar_t
	instantiations.
	* src/localename.cc (locale::_Impl::_Impl(string, size_t): Named
	locales use alternate constructor for ctype facet.
	* include/bits/locale_facets.h (ctype<char>::ctype(__c_locale, const
	mask*, bool, size_t): Add.
	(ctype<wchar_t>::ctype(__c_locale, size_t): Add.
	* src/locale.cc (ctype<wchar_t>::ctype(__c_locale, size_t)): Add
	definition.

	* testsuite/22_locale/ctype_members_char.cc (test02): Add, mark
	XFAIL for non-gnu locale models.

From-SVN: r47953
2001-12-12 23:16:35 +00:00
Philip Martin
cb93dfb4a0 Ross Smith <r-smith@ihug.co.nz> Paolo Carlini <pcarlini@unitus.it>
2001-12-12  Philip Martin  <philip@codematters.co.uk>
            Ross Smith     <r-smith@ihug.co.nz>
            Paolo Carlini  <pcarlini@unitus.it>

	libstdc++/5045
	* include/bits/std_limits.h (defines, numeric_limits<bool>::digits10):
	Fix digits10 values for integral types.
	* include/bits/locale_facets.tcc (num_get::do_get for integral types):
	Tweak _M_extract_int call.
	* testsuite/27_io/istream_extractor_arith.cc (test13, test12_aux):
	Tweak overflowing number of digits.
	* testsuite/18_support/numeric_limits.cc (test03): New testcase.

Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>
Co-Authored-By: Ross Smith <r-smith@ihug.co.nz>

From-SVN: r47947
2001-12-12 20:23:30 +00:00
Phil Edwards
3c612a619d allocators.cc: New file.
2001-12-11  Phil Edwards  <pme@gcc.gnu.org>

	* testsuite/ext/allocators.cc:  New file.

From-SVN: r47888
2001-12-11 19:04:58 +00:00
Benjamin Kosnik
2a74463013 locale_facets.h (__num_base::_S_scale_hex): Add.
2001-12-09  Benjamin Kosnik  <bkoz@redhat.com>
	    Philip Martin <pmartin@uklinux.net>

	* include/bits/locale_facets.h (__num_base::_S_scale_hex): Add.
	(__num_base::_S_scale_oct): Add.
	* src/locale.cc: Add definitions.
	* testsuite/27_io/istream_extractor_arith.cc (main): Call test13.

	* testsuite/testsuite_hooks.h: Remove duplicate VERIFY define.

Co-Authored-By: Philip Martin <pmartin@uklinux.net>

From-SVN: r47837
2001-12-10 08:41:03 +00:00
Benjamin Kosnik
823b4f7daa [multiple changes]
2001-12-06  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3720
	* include/bits/locale_facets.tcc (num_put): Clean.
	(num_get::_M_extract_float): Change argument to string.
	(num_get::do_get(float)): Fixup.
	(num_get::do_get(double)): Same.
	(num_get::do_get(long double)): Same.
	(num_get::_M_extract_int): Add maximum length parameter, __max.
	(num_get::_M_extract_float): Correct zeros, use string.
	* include/bits/locale_facets.h (num_get::_M_extract_float): Change
	declaration here.
	* src/locale.cc (__num_base::_S_atoms): Remove x, X.
	* testsuite/27_io/istream_extractor_arith.cc (test13): Add.

2001-12-06  Philip Martin  <pmartin@uklinux.net>

	* testsuite/27_io/istream_extractor_arith.cc (test12): Add
	tests for excess input digits.

From-SVN: r47743
2001-12-07 02:58:36 +00:00
Benjamin Kosnik
0228de0c4f [multiple changes]
2001-12-05  Benjamin Kosnik  <bkoz@redhat.com>

	DR/282
	* include/bits/locale_facets.tcc (num_put::_M_widen_float): Add
	grouping to floating point types.
	* testsuite/27_io/ostream_inserter_arith.cc (test02): Add test.

2001-12-04  Paolo Carlini <pcarlini@unitus.it>

        libstdc++/4402
        * testsuite/27_io/ostream_inserter_arith.cc (test02): add testcase
	from the PR.
        * include/bits/locale_facets.tcc (num_put::_M_convert_float):
        Deal properly with long ios_base::fixed floats.
        (num_put::_M_widen_float): use
	__len in __builtin_alloca call.

From-SVN: r47696
2001-12-05 22:07:36 +00:00