Commit Graph

2804 Commits

Author SHA1 Message Date
Paolo Carlini a809005264 stl_algo.h (__rotate<_RandomAccessIterator>): Don't qualify __tmp as const, _ValueType is not necessarily Assignable.
2005-05-20  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algo.h (__rotate<_RandomAccessIterator>):
	Don't qualify __tmp as const, _ValueType is not necessarily
	Assignable.
	* include/bits/stl_algobase.h (swap, __iter_swap<false>):
	Likewise, as an harmless extension.

From-SVN: r100011
2005-05-20 08:58:23 +00:00
Jonathan Wakely bfbc811b25 basic_string.h (operator[]): Allow s[s.size()] in debug mode, but not pedantic mode.
* include/bits/basic_string.h (operator[]): Allow s[s.size()] in
	debug mode, but not pedantic mode.

From-SVN: r99967
2005-05-19 09:59:46 +01:00
Paolo Carlini 66143232bc re PR libstdc++/19495 (basic_string::_M_rep() can produce an unnaturally aligned pointer to _Rep)
2005-05-18  Paolo Carlini  <pcarlini@suse.de>
	    Nathan Myers  <ncm@cantrip.org>

	PR libstdc++/19495
	* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
	size_type instead of char and rename to _Raw_alloc.
	* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
	Use the above.
	* src/bitmap_allocator.cc: Add instantiation for size_type.
	* src/mt_allocator.cc: Likewise.
	* src/pool_allocator.cc: Likewise.
	* include/ext/array_allocator.h: Tweak slightly, avoid assuming
	the existence of an _Array::begin() and size() members.
	* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
	of size_type, instead of char, thus avoiding problems with
	rebinds, not treated correctly by array_allocator.

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

From-SVN: r99933
2005-05-18 22:11:24 +00:00
Jonathan Wakely aeddae499f * include/debug/debug.h: Fix typo in macro name.
From-SVN: r99529
2005-05-10 18:30:36 +01:00
Paolo Carlini 6323b34eeb re PR libstdc++/18604 (Use of unqualified names conflict with names in global namespace)
2005-05-09  Paolo Carlini  <pcarlini@suse.de>
	    Giovanni Bajo  <giovannibajo@gcc.gnu.org>

	PR libstdc++/18604
	* include/bits/deque.tcc: Fully qualify names from namespace std.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/vector.tcc: Likewise.
	* include/std/std_bitset.h: Likewise.
	* testsuite/23_containers/bitset/18604.cc: New.
	* testsuite/23_containers/deque/18604.cc: Likewise.
	* testsuite/23_containers/list/18604.cc: Likewise.
	* testsuite/23_containers/map/18604.cc: Likewise.
	* testsuite/23_containers/set/18604.cc: Likewise.
	* testsuite/23_containers/vector/18604.cc: Likewise.

Co-Authored-By: Giovanni Bajo <giovannibajo@gcc.gnu.org>

From-SVN: r99499
2005-05-10 01:58:19 +00:00
Jonathan Wakely 48cf14eb9a DR 434.
DR 434. bitset::to_string() hard to use [Ready]
	* include/debug/bitset (to_string): Add three overloads, taking
	fewer template arguments.

From-SVN: r99433
2005-05-09 13:45:05 +01:00
Benjamin Kosnik a72c74a1de acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
2005-05-04  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
	* testsuite/Makefile.am: Same.
	* scripts/create_testsuite_files: Same.
	* Makefile.in: Regenerate.
	* configure: Same.
	* include/Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* libsupc++/Makefile.in: Same.
	* po/Makefile.in: Same.
	* src/Makefile.in: Same.

From-SVN: r99273
2005-05-05 16:12:28 +00:00
Paolo Carlini 544f9440ab re PR libstdc++/21286 (filebuf::xsgetn vs pipes)
2005-04-29  Paolo Carlini  <pcarlini@suse.de>
	    Nathan Myers  <ncm@cantrip.org>

	PR libstdc++/21286
	* include/bits/fstream.tcc (basic_filebuf<>::xsgetn):
	Loop on short reads; remove the work-around for
	libstdc++/20806, not needed anymore.

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

From-SVN: r99033
2005-04-30 06:54:08 +00:00
Paolo Carlini a70c902e06 re PR libstdc++/21238 (conflicting "typedef __numpunct_cache<_CharT> __cache_type;" in std::numpunct<CharT> makes specialization impossible)
2005-04-29  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21238
	* include/bits/locale_facets.tcc (num_get::_M_extract_float,
	num_get::_M_extract_int, num_get::do_get(bool&),
	num_put::_M_insert_int, num_put::_M_insert_float,
	num_put::do_put(bool), money_get::_M_extract,
	money_put::_M_insert): Adjust the __cache_type typedef not to
	forward to a numpunct/moneypunct typedef.
	* testsuite/testsuite_character.h: Add pod_uint and its numpunct
	and moneypunct specializations.
	* testsuite/testsuite_character.cc: Add numpunct<pod_uint>::id
	and moneypunct<pod_uint>::id.
	* testsuite/22_locale/num_get/3.cc: New.
	* testsuite/22_locale/num_put/3.cc: Likewise.
	* testsuite/22_locale/money_get/3.cc: Likewise.
	* testsuite/22_locale/money_put/3.cc: Likewise.

	* include/bits/locale_facets.tcc (money_put::_M_insert,
	time_get::_M_extract_name): Prefer operator== to operator!=
	on char_types.

From-SVN: r99012
2005-04-29 18:50:00 +00:00
Paolo Carlini 152d96766a type_traits (is_convertible): Adjust according to the resolution of TR1 issue 3.20.
2005-04-29  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (is_convertible): Adjust according
	to the resolution of TR1 issue 3.20.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_convertible/is_convertible.cc: Add tests.

From-SVN: r98944
2005-04-28 22:35:09 +00:00
Paolo Carlini a9dd5a466a PR libstdc++/21244 (cont)
2005-04-28  Paolo Carlini  <pcarlini@suse.de>
	    Gabriel Dos Reis  <gdr@integrable-solutions.net>

	PR libstdc++/21244 (cont)
	* include/bits/cpp_type_traits.h (struct __traitor): Convert
	to bool the values.
	* include/bits/stl_algo.h: Convert _S_threshold to int.
	* include/bits/stl_bvector.h: Revert previous change, convert
	_S_word_bit to int.
	* include/debug/formatter.h: Convert __max_parameters to
	size_t.
	* include/ext/mt_allocator.h: Likewise for _S_chunk_size.
	* include/ext/pool_allocator.h: Likewise for _S_max_bytes and
	_S_align.
	* include/ext/rope: Likewise for _S_alloc_granularity; convert
	_S_max_rope_depth to int.
	* include/ext/ropeimpl.h: Convert _S_path_cache_len to int;
	_S_max_rope_depth to int; _S_copy_max to size_t.

Co-Authored-By: Gabriel Dos Reis <gdr@integrable-solutions.net>

From-SVN: r98915
2005-04-28 07:50:48 +00:00
Dominik Strasser 2c2702f240 re PR libstdc++/21244 (Vector<bool> anonymous enum problem)
2005-04-27  Dominik Strasser  <dominik.strasser@infineon.com>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21244
	* include/bits/stl_bvector.h: Change the anonymous enum
	at namespace scope to _S_word_bit_enum.
	* testsuite/23_containers/vector/bool/21244.cc: New.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r98844
2005-04-27 15:59:06 +00:00
Paolo Carlini 4e5362a2a3 type_traits (has_trivial_copy, [...]): Adjust according to the resolution of TR1 issue 3.21.
2005-04-27  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (has_trivial_copy, has_trivial_assign,
	has_nothrow_copy, has_nothrow_assign): Adjust according to the
	resolution of TR1 issue 3.21.
	* testsuite/testsuite_tr1.h (test_copy_property,
	test_assign_property): Remove.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_nothrow_assign/has_nothrow_assign.cc: Adjust.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_nothrow_copy/has_nothrow_copy.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_trivial_assign/has_trivial_assign.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_trivial_copy/has_trivial_copy.cc: Likewise.

From-SVN: r98829
2005-04-27 15:08:57 +00:00
Paolo Carlini 44ecf60364 re PR libstdc++/21209 (signed integer overflow in num_get<>::_M_extract_int)
2005-04-26  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21209
	* include/bits/locale_facets.tcc (_M_extract_int): Avoid signed
	integer overflow, always use a suited unsigned type in the main
	parsing loop.
	(struct __to_unsigned_type): New.
	* testsuite/22_locale/num_get/get/char/16.cc: New.
	* testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.

From-SVN: r98768
2005-04-26 09:31:07 +00:00
Paolo Carlini a26b6b94b9 re PR libstdc++/21035 (Documentation for std::basic_string::compare() incorrect)
2005-04-25  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21035
	* include/bits/basic_string.h (compare): Adjust the documentation
	to match the implementation and the standard.

From-SVN: r98708
2005-04-25 10:59:21 +00:00
Jonathan Wakely 5ce7999da0 * include/bits/stl_algo.h (rotate_copy): Add missing std qualification.
From-SVN: r98326
2005-04-18 17:04:04 +01:00
Paolo Carlini 101c5bc507 re PR libstdc++/20914 (Another grouping trouble)
2005-04-17  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20914
	* include/bits/locale_facets.tcc (__int_to_char(_CharT*, _ValueT,
	const _CharT*, ios_base::fmtflags, bool)): Don't deal with numeric
	base or sign here, instead...
	(_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)): ... here,
	after adding the grouping. This fixes the bug and also allows to
	clean-up the code dealing with integer types.
	(_M_group_int(const char*, size_t, _CharT, ios_base&, _CharT*,
	_CharT*, int&)): Simplify, remove bits dealing with numeric base.
	(__int_to_char(_CharT*, unsigned long, const _CharT*,
	ios_base::fmtflags), __int_to_char(_CharT*, unsigned long long,
	const _CharT*, ios_base::fmtflags)): Remove hackish fix for
	libstdc++/15565.
	(__int_to_char(_CharT*, long, const _CharT*, ios_base::fmtflags),
	__int_to_char(_CharT*, long long, const _CharT*, ios_base::fmtflags)):
	Simplify, don't pass the sign.
	(_M_insert_float(_OutIter, ios_base&, _CharT, char, _ValueT)):
	Deal with a sign at the beginning of __cs; robustify the grouping
	check.
	* testsuite/22_locale/num_put/put/char/20914.cc: New.
	* testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.

From-SVN: r98271
2005-04-17 14:30:37 +00:00
Benjamin Kosnik 57b11c9654 2005-04-14 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/bitmap_allocator.h
        (__gnu_cxx::free_list::_M_get_mutex): New.
        (__gnu_cxx::free_list::_M_get_free_list): New.
        (__gnu_cxx::free_list::_S_bfl_mutex): Remove.
        (__gnu_cxx::free_list::_S_free_list): Remove.
        * src/bitmap_allocator.cc: Same.
        * config/linker-map.gnu: Remove free_list and mutex export.

From-SVN: r98173
2005-04-15 04:07:45 +00:00
Benjamin Kosnik 821503dbd6 pod_char_traits.h (__gnu_cxx::character): Add char_type.
2005-04-14  Benjamin Kosnik  <bkoz@redhat.com>

	*  include/ext/pod_char_traits.h (__gnu_cxx::character): Add char_type.
	(character::to): New.
	(character::from): New.
	(operator==): Add state parameter.
	(operator<): Same.
	(char_traits::copy): Use std::copy.
	(char_traits::assign): Use std::fill_n.
	(char_traits::to_char_type): Use character::from.
	(char_traits::to_int_type): Use character::to.
	*  testsuite/testsuite_character.h (__gnu_test::character): Remove.
	(__gnu_test::conversion_state): Remove.
	(__gnu_test::pod_char): Remove.
	(pod_char): New typedef.
	(pod_uchar): New typedef.
	(pod_ushort): New typedef.
	*  testsuite/testsuite_character.cc: Fixups.
	*  testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-in.cc: Same.
	*  testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-out.cc: Same.
	*  testsuite/22_locale/numpunct/members/pod/1.cc: Same.
	*  testsuite/22_locale/numpunct/members/pod/2.cc: Same.
	*  testsuite/27_io/basic_filebuf/close/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/open/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Same.
	*  testsuite/27_io/basic_ios/imbue/14072.cc: Same.
	*  testsuite/27_io/basic_istream/extractors_arithmetic/pod/
	3983-1.cc: Same.
	*  testsuite/27_io/basic_istream/extractors_character/pod/
	3983-2.cc: Same.
	*  testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
	*  testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
	*  testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.

From-SVN: r98165
2005-04-15 02:06:26 +00:00
Paolo Carlini eaf727f9d8 re PR libstdc++/20909 (incorrect floating point format)
2005-04-08  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20909
	* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
	Don't even try to group numbers like 2e20, i.e., no decimal
	point, scientific notation.
	* testsuite/22_locale/num_put/put/char/20909.cc: New.
	* testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.

From-SVN: r97873
2005-04-09 00:08:58 +00:00
Danny Smith 1ae4835877 re PR libstdc++/20806 (basic_filebuf::xsgetn() fails with text mode and DOS line endings and large buffers)
2005-04-08  Danny Smith  <dannysmith@users.sourceforge.net>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20806
	* config/os/mingw32/os_defines.h: Define
	_GLIBCXX_HAVE_DOS_BASED_FILESYSTEM.
	* config/os/newlib/os_defines.h: Likewise, for __CYGWIN__.
	* include/bits/fstream.tcc (basic_filebuf<>::showmanyc()):
	Use it.
	(basic_filebuf<>::xsgetn(_CharT*, streamsize)): Likewise.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r97842
2005-04-08 17:31:33 +00:00
Kelley Cook 3a24bf5d16 configure.ac: Create template for PACKAGE and VERSION.
2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Create template for PACKAGE and VERSION.
	Update comment on how to regenerate file.  Update minimum
	automake version to 1.9.3.
	* acconfig.h: Remove PACKAGE and VERSION.
	* aclocal.m4, configure, Makefile.in, po/Makefile.in,
	src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
	testsuite/Makefile.in, config.h.in: Regenerate.

From-SVN: r97815
2005-04-08 00:59:08 +00:00
Benjamin Kosnik 5305b1ae1b test.html: Update.
2005-04-06  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/test.html: Update.
	* testsuite/printnow.c: Remove.
	* scripts/check_survey.in: Remove.

	* testsuite/abi_check.cc: To...
	* testuite/testsuite_abi_check.cc: ...here.
	* testsuite/libstdc++-abi/abi.exp: Change abi_check.cc to
	testsuite_abi_check.cc.

	* testsuite/testsuite_hooks.h: Move character related bits to...
	* testsuite/testsuite_character.h: ...here.
	* testsuite/testsuite_character.cc: ... and here.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-in.cc: Use testsuite_character.h.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-out.cc: Same.
	* testsuite/22_locale/numpunct/members/pod/1.cc: Same.
	* testsuite/22_locale/numpunct/members/pod/2.cc: Same.
	* testsuite/27_io/basic_filebuf/2.cc: Same.
	* testsuite/27_io/basic_fstream/2.cc: Same.
	* testsuite/27_io/basic_istream/2.cc: Same.
	* testsuite/27_io/basic_istream/extractors_arithmetic/pod/
	3983-1.cc: Same.
	* testsuite/27_io/basic_istream/extractors_character/char/
	9826.cc: Same.
	* testsuite/27_io/basic_istream/extractors_character/pod/
	3983-2.cc: Same.
	* testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
	* testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
	* testsuite/27_io/basic_ostream/2.cc: Same.
	* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
	* testsuite/27_io/basic_streambuf/2.cc: Same.
	* testsuite/27_io/basic_stringbuf/2.cc: Same.
	* testsuite/27_io/basic_stringbuf/4.cc: Same.
	* testsuite/27_io/basic_stringstream/2.cc: Same.
	* testsuite/27_io/fpos/1.cc: Same.
	* testsuite/ext/mt_allocator/tune-1.cc: Same.
	* testsuite/ext/mt_allocator/tune-2.cc: Same.
	* testsuite/ext/stdio_filebuf/char/1.cc: Same.
	* testsuite/lib/libstdc++.exp (v3-build_support): Add
	testsuite_character.cc.
	* testsuite/Makefile.am (libv3test_a_SOURCES): Add
	testsuite_character.cc.
	* testsuite/Makefile.in: Regenerate.

	* configure.ac: Remove use of check_survey.
	* configure: Regenerate.
	* testsuite/Makefile.am: Remove check-script and
	check-script-install rules.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r97772
2005-04-07 04:16:26 +00:00
Kelley Cook c41f82b270 Makefile.am (ACLOCAL_AMFLAGS): Define.
2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (ACLOCAL_AMFLAGS): Define.
	* crossconfig.m4: Wrap file into new GLIBCXX_CROSSCONFIG macro.
	* configure.ac: Use it.
	* acinclude.m4: Delete explicit m4_includes and sincludes.
	* aclocal.m4, configure, Makefile.in, po/Makefile.in,
	src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
	testsuite/Makefile.in: Regenerate.

From-SVN: r97677
2005-04-06 00:05:51 +00:00
Jonathan Wakely fcec20a758 memory, [...]: Use mutex to make _Sp_counted_base::add_ref_lock() thread-safe.
* include/tr1/memory, include/tr1/boost_shared_ptr.h: Use mutex
	to make _Sp_counted_base::add_ref_lock() thread-safe. Check whether
	to destroy resources by testing for equality, not inequality. Add
	empty critical sections to solve memory visibility issues.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/auto_ptr_neg.cc: Use dg-excess-errors instead of
	explicitly listing line numbers which need to be kept in sync.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/auto_ptr_neg.cc: Same.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/auto_ptr_rvalue_neg.cc: Same.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/weak_ptr_expired.cc: Make XFAIL for consistency when
	-fno-exceptions.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared.cc: Add explanatory comments.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared2.cc: Same.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared3.cc: Same.

From-SVN: r97620
2005-04-05 12:08:55 +01:00
Douglas Gregor 4ee3998918 tuple_iterate.h (tuple_element): Use new macro _GLIBCXX_T_NUM_ARGS_PLUS_1 because _T is a macro on Darwin.
2005-04-02  Douglas Gregor  <doug.gregor@gmail.com>

	* include/tr1/tuple_iterate.h (tuple_element): Use new macro
	_GLIBCXX_T_NUM_ARGS_PLUS_1 because _T is a macro on Darwin.
	* include/tr1/repeat.h (_GLIBCXX_T_NUM_ARGS_PLUS_1): Define for
	each iteration.
	* scripts/gen_includers.h: Define _GLIBCXX_T_NUM_ARGS_PLUS_1 for
	each iteration.

From-SVN: r97438
2005-04-02 12:56:18 +00:00
Douglas Gregor ca6ca8fa9c functional (_Maybe_wrap_member_pointer): Wrap up member pointers in _Mem_fn but let other function objects pass through...
2005-04-01  Douglas Gregor  <doug.gregor@gmail.com>

	* include/tr1/functional (_Maybe_wrap_member_pointer): Wrap up
	member pointers in _Mem_fn but let other function objects pass
	through unchanged.
	* include/tr1/functional_iterator (bind): Reduce number of bind()
	overloads to two to eliminate ambiguities. Use
	_Maybe_wrap_member_pointer to handle member pointers gracefully.

From-SVN: r97428
2005-04-02 02:02:29 +00:00
Doug Gregor 59cffcf69a [multiple changes]
2005-03-31  Chris Jefferson  <chris@bubblescope.net>

        * include/tr1/tuple: Support iteration via tuple_iterate.h.
        * include/tr1/tuple_iterate.h: Iteration file for tuple.

2005-03-31  Douglas Gregor  <doug.gregor@gmail.com>

        * include/Makefile.am (tr1_headers): Add bind and mu repetition
        headers and reference_wrapper<> forwarding header.
        * include/Makefile.in: Regenerate.
        * include/tr1/bind_iterate.h: Implementation of function call
        operators for the function object returned from tr1::bind().
        * include/tr1/bind_repeat.h: Bind-specific repetition header,
        akin to include/tr1/repeat.h.
        * include/tr1/functional (_Mem_fn): Bug fix: declare result
member
        template for use with result_of.
        (is_bind_expression): New.
        (is_placeholder): New.
        (_Placeholder): New. Placeholder type for bind.
        (_Mu): New. Implementation detail of bind.
        (_Bind, _Bind_result): New. Function objects returned by bind.
        (_GLIBCXX_JOIN): New. Required to create bind placeholders.
        * include/tr1/functional_iterate.h (_Bind, _Bind_result, bind):
        New. Implementation of tr1::bind.
        * include/tr1/mu_iterate.h (_Mu): result template and operator()
        for the _Mu helper to bind.
        * include/tr1/ref_fwd.h (reference_wrapper): Forward declaration
        used by tuple header.
        (ref): Ditto.
        (cref): Ditto.
        * include/tr1/repeat.h: Add bind-specific repetition macros.
        * include/tr1/tuple: Use reference_wrapper forwarding header for
        initial definitions, then include <tr1/functional> at the end, to
        make the circular dependencies work.
        (tie): Support zero-argument tie() function.
        * testsuite/tr1/3_function_objects/bind/all_bound.cc: New test of
        bind() functionality with parameters bound.
        * testsuite/tr1/3_function_objects/bind/nested.cc: New test of
        nested bind() expressions.
        * testsuite/tr1/3_function_objects/bind/placeholders.cc: New test
        of bind() placeholders.
        * testsuite/tr1/3_function_objects/bind/ref.cc: New test of bind()
        with arguments bound via reference_wrapper<>.
        * scripts/gen_includers.pl: Generate the repetitive part of
	include/tr1/repeat.h.
	* scripts/gen_bind_includers.pl: Generate the repetitive part of
	include/tr1/bind_repeat.h.

From-SVN: r97361
2005-04-01 03:35:59 +00:00
Benjamin Kosnik b758b22ac2 memory: Forward to...
2005-03-24  Benjamin Kosnik  <bkoz@redhat.com>

	* include/tr1/memory: Forward to...
	* include/tr1/boost_shared_ptr.h: ...here. Add Boost Software License.
	* include/Makefile.am (tr1_headers): Add boost_shared_ptr.h.
	* include/Makefile.in: Regenerate.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
	auto_ptr_neg.cc: Adjust line numbers.

From-SVN: r97003
2005-03-24 18:32:18 +00:00
Benjamin Kosnik 347669a079 acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies using _GLIBCXX_USE_C99_COMPLEX...
2005-03-23  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies
	using _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_USE_C99_MATH, and
	_GLIBCXX_USE_C99_WCHAR.
	Remove GLIBCXX_ENABLE_C_MBCHAR, consolidate in GLIBCXX_ENABLE_C99
	and GLIBCXX_ENABLE_WCHAR_T.
	Take C99 bits from GLIBCXX_CHECK_WCHAR_T_SUPPORT and put in
	GLIBCXX_ENABLE_C99.
	Change remaining parts of GLIBCXX_CHECK_WCHAR_T_SUPPORT to
	GLIBCXX_CHECK_ICONV_SUPPORT.
	* configure.ac: Remove GLIBCXX_ENABLE_C_MBCHAR, use
	GLIBCXX_CHECK_ICONV_SUPPORT and GLIBCXX_ENABLE_WCHAR_T.
	* crossconfig.m4: Same.
	* acconfig.h: Same, adjust comments.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* docs/html/configopts.html: Change --enable-c-mbchar to
	--enable-wchar_t.

	* config/locale/gnu/c++locale_internal.h: Guard wide functions
	with _GLIBCXX_USE_WCHAR_T.
	* include/c_std/std_cwctype.h: Alphabetize, remove duplicates.
	* include/c_std/std_cstdio.h: Spacing.

	* config/locale/gnu/c_locale.h: Tweaks for unused warnings.
	* src/debug.cc: Same.

From-SVN: r96981
2005-03-24 05:45:45 +00:00
Chris Jefferson aed63147cb re PR libstdc++/20577 (iter_swap doesn't work anymore with vector<bool>)
2005-03-21  Chris Jefferson  <chris@bubblescope.net>

	PR libstdc++/20577
	* include/bits/stl_algobase.h (iter_swap): Only delegate iter_swap
	to swap when the iterator's reference_type is a reference to its
	value_type.
	* testsuite/25_algorithms/iter_swap/20577.cc: New.

From-SVN: r96837
2005-03-21 22:16:15 +00:00
Zack Weinberg 47194af45f acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
* acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
	(GLIBCXX_EXPORT_INSTALL_INFO): Adjust quotation so ${gcc_version}
	is expanded by the Makefiles, not by configure.
	* fragment.am: Set gcc_version.
	* libmath/Makefile.am: Likewise.
	* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in
	* libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in
	* testsuite/Makefile.in: Regenerate.

From-SVN: r96814
2005-03-21 17:40:24 +00:00
Zack Weinberg a1286ef574 gcc-version.m4: Delete.
config:
	* gcc-version.m4: Delete.
fastjar:
	* Makefile.am (fastjar_TEXINFOS): Add gcc-vers.texi.
	(BASEVER, DEVPHASE): New variables.
	(POD2MAN): Adjust setting of --release option.
	(fastjar.1, grepjar.1, gcc-vers.texi): New rules.
	* Makefile.in: Regenerate.
	* configure.ac: Do not invoke TL_AC_GCC_VERSION.
	* aclocal.m4, configure: Regenerate.
gcc:
	* BASE-VER, DATESTAMP, DEV-PHASE: New files.
	* Makefile.in (gcc_version, gcc_version_trigger, ): Delete.
	(BASEVER, DEVPHASE, DATESTAMP, BASEVER_c, DEVPHASE_c, DATESTAMP_c)
	(BASEVER_s, DEVPHASE_s, DATESTAMP_s): New variables.
	(version): Define using $(BASEVER_c).
	(Makefile, config.status, build/gcov-iov.o): No longer depends on
	version.c.
	(version.o): Depend on version files; add custom generation command.
	(prefix.o): Define BASEVER on command line.
	(s-iov): Depend on version files; adjust command.
	(TEXI_CPP_FILES, TEX_IGCC_FILES, TEXI_GCCINT_FILES, TEXI_CPPINT_FILES):
	Add gcc-vers.texi.
	(gcc-vers.texi): New rule.
	(doc/%.info, doc/%.dvi): Add -I . to command line.
	(doc/gccinstall.dvi): Likewise.
	(PACKAGE): Delete.  All uses replaced with "gcc".
	* aclocal.m4: Do not include gcc-version.m4.
	* configure.ac: Do not invoke TL_AC_GCC_VERSION.
	Do not AC_SUBST nor AC_DEFINE PACKAGE or VERSION.
	Set is_release based on contents of DEV-PHASE.
	Set gcc_version based on contents of BASE-VER.
	Define WIN32_REGISTRY_KEY only if the user overrode the default.
	* config.in, configure: Regenerate.
	* gccbug.in: Determine version of GCC in use at runtime.
	* gcov-iov.c: Get version number and development phase from
	command line, not by including version.c.
	* intl.c: Replace all uses of PACKAGE with "gcc".
	* libada-mk.in: Delete unused "gcc_version" variable.
	* prefix.c: Default WIN32_REGISTRY_KEY to BASEVER.
	* version.c: (VERSUFFIX): New hook for redistributors; adjust
	commentary to match.
	(version_string): Put together from pieces.
	* config/alpha/x-vms: Do not use $(gcc_version).
	* config/i386/t-nwld: Likewise.
	* doc/include/gcc-common.texi: Include gcc-vers.texi for
	version-GCC and DEVELOPMENT.
gcc/ada:
	* Make-lang.in (doc/gnat_ugn_unw.info, doc/gnat_rm.info)
	(doc/gnat_ugn_unw.dvi, doc/gnat_rm.dvi): Add gcc-vers.texi
	to dependencies.
gcc/fortran:
	* Make-lang.in (GFORTRAN_TEXI): Add gcc-vers.texi.
gcc/java:
	* Make-lang.in (TEXI_JAVA_FILES): Add gcc-vers.texi.
gcc/treelang:
	* Make-lang.in (TEXI_TREELANG_FILES): Add gcc-vers.texi.
libstdc++-v3:
	* include/Makefile.am (c++config.h): Depend on DATESTAMP from gcc
	subdirectory.  Generate #define of __GLIBCXX__ from contents of
	that file.
	* include/Makefile.in: Regenerate.
	* include/bits/c++config: Do not define __GLIBCXX__.
maintainer-scripts:
	* README: Update.
	* gcc_release: Update gcc/DEV-PHASE if that file exists, instead
	of gcc/version.c.
	* update_version: Handle updating gcc/DATESTAMP.
	* update_web_docs: Generate gcc-vers.texi first.

From-SVN: r96549
2005-03-16 06:04:10 +00:00
GCC Administrator c96a2f400d Daily bump.
From-SVN: r96543
2005-03-16 00:16:26 +00:00
Paolo Carlini b0de85997d re PR libstdc++/20352 (FAIL: 26_numerics/complex/pow.cc execution test)
2005-03-15  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20352
	* include/std/std_complex.h (pow(const complex<_Tp>&,
	const _Tp&)): On non-c99 platforms, don't try to compute
	log of complex zero.

From-SVN: r96538
2005-03-15 23:38:54 +00:00
GCC Administrator cd8b38b9eb Daily bump.
From-SVN: r96457
2005-03-15 00:16:23 +00:00
GCC Administrator 1d2093c32b Daily bump.
From-SVN: r96401
2005-03-14 00:16:58 +00:00
GCC Administrator 23845f0220 Daily bump.
From-SVN: r96360
2005-03-13 00:16:54 +00:00
GCC Administrator 29c9a15eb6 Daily bump.
From-SVN: r96318
2005-03-12 00:16:43 +00:00
GCC Administrator 457516a576 Daily bump.
From-SVN: r96276
2005-03-11 00:16:51 +00:00
GCC Administrator 1569224588 Daily bump.
From-SVN: r96228
2005-03-10 00:19:29 +00:00
GCC Administrator 0cbb117e8c Daily bump.
From-SVN: r96146
2005-03-09 00:16:20 +00:00
GCC Administrator 2125de9340 Daily bump.
From-SVN: r96058
2005-03-08 00:16:24 +00:00
Paolo Carlini cff001b2e8 type_traits (is_polymorphic): Don't forget the virtual destructor, thus avoiding warnings.
2005-03-07  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (is_polymorphic): Don't forget
	the virtual destructor, thus avoiding warnings.
	* testsuite/testsuite_tr1.h (class AbstractClass,
	class PolymorphicClass): Likewise.

2005-03-07  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_complex.h (pow(const complex<_Tp>&,
	const complex<_Tp>&)): Dispatch to either __complex_pow(__x.__rep(),
	__y.__rep()) or __complex_pow(__x, __y) depending on the macro
	_GLIBCXX_USE_C99_COMPLEX.

From-SVN: r96048
2005-03-07 22:22:35 +00:00
Paolo Carlini 7a59efae86 std_fstream.h (basic_fstream<>::open, [...]): Implement the resolution of DR 409 [Ready], call clear() on success.
2005-03-07  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_fstream.h (basic_fstream<>::open,
	basic_ifstream<>::open, basic_ofstream<>::open): Implement the
	resolution of DR 409 [Ready], call clear() on success.
	* docs/html/ext/howto.html: Add an entry for DR 409.
	* docs/html/faq/index.html (4_4): Clarify the new behavior.
	* testsuite/27_io/basic_ifstream/open/char/1.cc: Adjust.
	* testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.

From-SVN: r96030
2005-03-07 16:58:43 +00:00
GCC Administrator 0f2371cb2d Daily bump.
From-SVN: r95998
2005-03-07 00:16:26 +00:00
GCC Administrator 5c2ff394f3 Daily bump.
From-SVN: r95959
2005-03-06 00:16:33 +00:00
Paolo Carlini f4e4284dcc type_traits: Add is_base_of.
2005-03-04  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Add is_base_of.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_base_of/is_base_of.cc: New.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_base_of/typedefs.cc: Likewise.

From-SVN: r95911
2005-03-05 00:22:48 +00:00
GCC Administrator ce11b6e146 Daily bump.
From-SVN: r95909
2005-03-05 00:16:40 +00:00
GCC Administrator ec5a720845 Daily bump.
From-SVN: r95858
2005-03-04 00:16:26 +00:00