Commit Graph

3568 Commits

Author SHA1 Message Date
Paolo Carlini 08376e28d4 ctype.cc (use_facet<ctype<char> >, [...]): Remove specializations.
2008-09-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/ctype.cc (use_facet<ctype<char> >, use_facet<ctype<wchar_t>):
	Remove specializations.
	* src/locale-inst.cc (use_facet<ctype<C> >): Instantiate.
	* include/bits/locale_facets.tcc (use_facet<ctype<char> >,
	use_facet<ctype<wchar_t>): Declare as extern template.
	* include/bits/locale_facets.h (use_facet<ctype<char> >,
	use_facet<ctype<wchar_t>): Do not declare as specializations.

From-SVN: r140251
2008-09-10 21:34:38 +00:00
Paolo Carlini 6c43852a18 re PR libstdc++/37455 (Code bloat for ostream.widen('\n'))
2008-09-10  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/37455
	* include/bits/locale_facets.h (ctype<char>::_M_narrow_init,
	ctype<char>::_M_widen_init): Don't define inline.
	* config/locale/darwin/ctype_members.cc: ... define here.
	* config/locale/gnu/ctype_members.cc: ... likewise.
	* config/locale/generic/ctype_members.cc: ... likewise.
	* config/abi/pre/gnu.ver: Export.

From-SVN: r140238
2008-09-10 16:48:47 +00:00
Paolo Carlini 802841eb8c cinttypes: Restore __STDC_FORMAT_MACRO after inclusion of <inttypes.h>.
2008-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/tr1_impl/cinttypes: Restore __STDC_FORMAT_MACRO after
	inclusion of <inttypes.h>.
	* include/tr1_impl/cstdint: Likewise for __STDC_LIMIT_MACROS and
	__STDC_CONSTANT_MACROS after <stdint.h>.
	* include/bits/postypes.h: Likewise.

From-SVN: r140174
2008-09-09 21:33:46 +00:00
Paolo Carlini a834e097ea acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Check wcstoimax and wcstoumax, define _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
2008-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Check wcstoimax and
	wcstoumax, define _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
	* include/tr1_impl/cinttypes: Use the latter.
	* testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Likewise.
	* configure: Regenerate.
	* config.h.in: Likewise.

From-SVN: r140089
2008-09-07 16:41:06 +00:00
Jonathan Wakely 640cbe76c7 re PR libstdc++/36962 ([C++0x] Add constructors / assignment operators from unique_ptr to shared_ptr)
PR libstdc++/36962
	* include/Makefile.am: Update headers.
	* include/Makefile.in: Regenerate.
	* include/std/memory: Update headers.
	* include/tr1/memory: Likewise.
	* include/tr1_impl/boost_shared_ptr.h: Remove, splitting into
	separate implementations for std and tr1.
	* include/bits/boost_sp_shared_count.h: Remove.
	* include/tr1/boost_sp_shared_count.h: Remove.
	* include/bits/shared_ptr.h: New. Combines boost_sp_shared_count.h
	and boost_shared_ptr.h into one file.
	(__shared_count,__shared_ptr,shared_ptr,swap): Add unique_ptr
	and rvalue-reference support as per current WP.
	* include/tr1/shared_ptr.h: New. Combines boost_sp_shared_count.h
	and boost_shared_ptr.h into one file.
	* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: New.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: New.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref.cc: New.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: New.
	* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: New.
	* testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc: New.
	* testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: New.
	* testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: New.
	* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Remove.

From-SVN: r140012
2008-09-04 23:33:10 +01:00
Chris Fairles d74eef3beb mutex (once_flag): Construct __gthread_once_t in a temporary variable before assigning to _M_once...
2008-09-04  Chris Fairles  <chris.fairles@gmail.com>

        * include/std/mutex (once_flag): Construct __gthread_once_t in a
	temporary variable before assigning to _M_once to avoid initialization
	errors.

From-SVN: r139986
2008-09-04 14:35:54 +00:00
Paolo Carlini 37383ef55e gnu.ver: Also export __once_functor_lock...
2008-09-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* config/abi/pre/gnu.ver: Also export __once_functor_lock; tighten
	GLIBCXX_3.4 exports (necessary in case of undef _GLIBCXX_HAVE_TLS).

	* Makefile.in: Regenerate.
	* src/Makefile.in: Likewise.
	* doc/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* libmath/Makefile.in: Likewise.
	* include/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

From-SVN: r139968
2008-09-04 00:57:57 +00:00
Chris Fairles 7b800287b7 condition_variable: Use new deleted ctors.
2008-09-03  Chris Fairles  <chris.fairles@gmail.com>

        * include/std/condition_variable: Use new deleted ctors.
        * include/std/mutex: Likewise plus implement timed_mutex, 
	recursive_timed_mutex and call_once.
	* src/condition_variable.cc: Implement wait(). Use gthread types.
	Remove _GTHREADS_HAS_COND checks in favor of global
	_GLIBCXX_HAS_GTHREADS.
	* src/mutex.cc (call_once): Implementation using TLS with mutex
	fallback.
	* config/abi/pre/gnu.ver: Add exported symbols.
	* testsuite/lib/libstdc++.exp (check_v3_target_gthreads): New.
	* testsuite/lib/dg-options.exp (dg-require-gthreads): Likewise.
	* testsuite/30_threads/lock_guard/requirements/typedefs.cc: Use
	dg-require-gthreads and dg-require-cstdint.
	* testsuite/30_threads/lock_guard/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/requirements/typedefs.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
	Likewise.
        * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/requirements/typedefs.cc:
	Likewise.
        * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/unique_lock/requirements/typedefs.cc: Likewise.
        * testsuite/30_threads/mutex/cons/assign_neg.cc: Also adjust dg-error
	lines for deleted members.
        * testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/call_once/once_flag.cc: New.
	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise
	* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
	Likewise.
	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc: 
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc: 
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc: 
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc: 
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: 
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
	Likewise.
	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.

From-SVN: r139943
2008-09-03 17:46:09 +00:00
Mark Mitchell a023046841 type_traits (__make_unsigned_selector<>): Consider enums of size smaller than short.
* include/std/type_traits (__make_unsigned_selector<>): Consider
	enums of size smaller than short.
	(__make_signed_selector<>): Likewise.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Adjust line numbers.
	* testsuite/20_util/make_usigned/requirements/typedefs_neg.cc:
	Adjust line numbers.
	* testsuite/20_util/make_signed/requirements/typedefs-2.cc:
	Ensure test_enum is the same size as short.
	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
	Ensure test_enum is the same size as short.

From-SVN: r139875
2008-09-01 23:24:09 +00:00
Aaron W. LaFramboise d89f0ad622 configure.ac (RPATH_ENVVAR): Use PATH on Windows.
2008-08-31  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>

	<toplevel>
	* configure.ac (RPATH_ENVVAR): Use PATH on Windows.
	(GCC_SHLIB_SUBDIR): New.
	* Makefile.tpl (HOST_LIB_PATH_gcc): Use GCC_SHLIB_SUBDIR.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

	<gcc>
	* mkmap-flat.awk: Add option pe_dll.
	* config/i386/t-cygming (SHLIB_LINK): Support building libgcc_s.
	* gcc/config/i386/t-cygwin (SHLIB_LC): Add.
	* gcc/config/i386/t-mingw32 (SHLIB_LC): Add.
	* config/i386/mingw32.h (SHARED_LIBGCC_UNDEFS_SPEC): New.
	(SUBTARGET_EXTRA_SPECS): Use SHARED_LIBGCC_UNDEFS_SPEC.
	(LINK_SPEC): Support libgcc_s.
	(LIBGCC_SPEC): Support libgcc_s.
	(LIBGCC_SONAME): New.

	<libstdc++-v3>
	* acinclude.m4 <enable_symvers>: Don't use symvers on Windows.
	* configure: Regenerated.
	* Makefile.in: Regenerated.
	* src/Makefile.in: Regenerated.
	* doc/makefile.in: Regenerated.
	* po/Makefile.in: Regenerated.
	* libmath/Makefile.in: Regenerated.
	* include/Makefile.in: Regenerated.
	* libsupc++/Makefile.in: Regenerated.
	* testsuite/makefile.in: Regenerated.

From-SVN: r139837
2008-08-31 12:14:25 -06:00
Paolo Carlini eafb2f2d27 hashtable (_Hashtable<>): Add missing pointer and const_pointer typedefs.
2008-08-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/tr1_impl/hashtable (_Hashtable<>): Add missing pointer and
	const_pointer typedefs.
	* testsuite/tr1/6_containers/unordered_set/requirements/typedef.cc:
	Add.
	* testsuite/tr1/6_containers/unordered_map/requirements/typedef.cc:
	Likewise.
	* testsuite/tr1/6_containers/unordered_multiset/requirements/
	typedef.cc: Likewise.
	* testsuite/tr1/6_containers/unordered_multimap/requirements/
	typedef.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/typedef.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/requirements/typedef.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/typedef.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/typedef.cc:
	Likewise.

From-SVN: r139674
2008-08-27 19:27:11 +00:00
Paolo Carlini 2fb63453bd char_traits.h (char_traits<char16_t>:: assign(char_type*, size_t, char_type), [...]): For now, just open-code.
2008-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/char_traits.h (char_traits<char16_t>::
	assign(char_type*, size_t, char_type), char_traits<char32_t>::
	assign(char_type*, size_t, char_type)): For now, just open-code.

From-SVN: r139367
2008-08-21 01:06:45 +00:00
Paolo Carlini 5e44d591c8 PR libstdc++/33979 (partial)
2008-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/33979 (partial)
	* include/bits/postypes.h (u16streampos, u32streampos): Add.
	* include/bits/char_traits.h (char_traits<char16_t>,
	char_traits<char32_t>): Add.
	* include/bits/stringfwd.h (u16string, u32string): Add.
	* include/ext/vstring_fwd.h: Add typedefs for char16_t/char32_t.
	* testsuite/21_strings/char_traits/requirements/char32_t/typedefs.cc:
	New.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/short/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/char32_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/char16_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/char/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/char16_t/typedefs.cc:
	Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/char32_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/char16_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/char/1.cc: Likewise.
	* testsuite/21_strings/headers/string/types_std_c++0x.cc: Likewise.
	* testsuite/ext/vstring/requirements/explicit_instantiation/
	char32_t/1.cc: Likewise.
	* testsuite/ext/vstring/requirements/explicit_instantiation/
	char16_t/1.cc: Likewise.

From-SVN: r139339
2008-08-20 19:29:54 +00:00
Paolo Carlini b7e2f896db re PR testsuite/37149 (27_io/basic_ostream/inserters_other/char/error_code.cc)
2008-08-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/37149
	* testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Include
	<cstdio>.
	* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
	Likewise.
	* testsuite/27_io/objects/char/12048-1.cc: Likewise.
	* testsuite/27_io/objects/char/12048-3.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise.
	* testsuite/ext/malloc_allocator/deallocate_global.cc: Likewise.
	* testsuite/ext/malloc_allocator/deallocate_local.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-6.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-8.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-5.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-7.cc: Likewise.
	* testsuite/ext/new_allocator/deallocate_global.cc: Likewise.
	* testsuite/ext/new_allocator/deallocate_local.cc: Likewise.
	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
	* include/std/regex: Include <sstream>.
	* include/tr1/regex: Likewise.

From-SVN: r139206
2008-08-18 17:48:15 +00:00
Paolo Carlini bbbd5025a1 re PR libstdc++/37100 (/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99: error 404)
2008-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/37100
	* include/bits/stl_pair.h: Fix documentation URL in comment.

From-SVN: r139040
2008-08-12 23:14:10 +00:00
Johannes Singler d0259b010b 2008-08-12 Johannes Singler <singler@ira.uka.de>
* include/paralle/losertree.h
        (LoserTreePointerBase<>::~LoserTreePointerBase):
        Replace delete by appropriate delete[].

From-SVN: r139026
2008-08-12 17:23:00 +00:00
Stephen M. Webb 3bcd44c051 Formatting fixes for include/tr1_impl/regex.
From-SVN: r138967
2008-08-11 21:06:00 +00:00
Paolo Carlini 77d4510875 type_traits (_DEFINE_SPEC*): Simplify.
2008-08-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/tr1_impl/type_traits (_DEFINE_SPEC*): Simplify.
	(_DEFINE_SPEC_BODY): Remove.
	(__is_void_helper, __is_integral_helper, __is_floating_point_helper,
	__is_member_object_pointer_helper, __is_member_function_pointer_helper,
	__remove_pointer_helper): Add.
	(is_void, is_integral, is_floating_point, is_member_object_pointer,
	is_member_function_pointer, remove_pointer): Use the latter.
	* include/tr1/type_traits (_DEFINE_SPEC): Simplify.
	(_DEFINE_SPEC_HELPER): Remove.
	(__is_signed_helper, __is_unsigned_helper): Add.
	(is_signed, is_unsigned): Use the latter.

From-SVN: r138925
2008-08-10 10:11:46 +00:00
Paolo Carlini 6cccc20014 Revert fix for libstdc++/35637, thanks to other/36901.
2008-08-09  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert fix for libstdc++/35637, thanks to other/36901.
	* include/tr1_impl/type_traits (__is_function_helper): New, uses
	variadic templates.
	(is_function): Forward to the latter.
	(__in_array): Remove.

From-SVN: r138906
2008-08-09 15:58:52 +00:00
Paolo Carlini 1de853b169 ios_base.h: Undef _IOS_BASE_SEEK_CUR and _IOS_BASE_SEEK_END at the end of the file.
2008-08-08  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/ios_base.h: Undef _IOS_BASE_SEEK_CUR and
	_IOS_BASE_SEEK_END at the end of the file.
	* include/bits/char_traits.h: Likewise for _CHAR_TRAITS_EOF.

From-SVN: r138862
2008-08-08 09:54:09 +00:00
Stephen M. Webb e297d9fe0d * include/tr1_impl/regex (match_results): Add cbegin()/cend() per N2691 WD.
From-SVN: r138842
2008-08-07 15:06:28 +00:00
Paolo Carlini 1814157e88 acinclude.m4 ([GLIBCXX_CHECK_STDIO_MACROS]): New, checks for common values of EOF, SEEK_CUR, SEEK_END.
2008-08-06  Paolo Carlini  <paolo.carlini@oracle.com>

	* acinclude.m4 ([GLIBCXX_CHECK_STDIO_MACROS]): New, checks for
	common values of EOF, SEEK_CUR, SEEK_END.
	* configure.ac: Use it.
	* include/bits/ios_base.h: Likewise.
	* include/bits/char_traits.h: Likewise.
	* config/locale/gnu/ctype_members.cc: Include <cstdio>.
	* config/locale/generic/ctype_members.cc: Likewise.
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error lines.
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
	* configure: Regenerate.
	* config.h.in: Likewise.

From-SVN: r138829
2008-08-06 23:17:05 +00:00
Paolo Carlini fc9ab7b4c0 acinclude.m4 ([GLIBCXX_CHECK_INT64_T]): Also check whether int64_t is actually a typedef to long or long long.
2008-08-06  Paolo Carlini  <paolo.carlini@oracle.com>

	* acinclude.m4 ([GLIBCXX_CHECK_INT64_T]): Also check whether int64_t
	is actually a typedef to long or long long.
	* include/bits/postypes.h: If int64_t is actually a typedef for
	long or long long don't include <stdint.h> unnecessarily.
	* configure: Regenerate.
	* config.h.in: Likewise.

From-SVN: r138797
2008-08-06 12:25:00 +00:00
Paolo Carlini d27653b8a3 postypes.h: Reinstate inclusion of <stdint.h>; also define the __STDC_* macros.
2008-08-04  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/postypes.h: Reinstate inclusion of <stdint.h>;
	also define the __STDC_* macros.
	(streamoff): Adjust.

	* include/tr1_impl/cstdint: Check that the __STDC_* macros are
	not defined before defining.

From-SVN: r138608
2008-08-04 12:05:41 +00:00
Paolo Bonzini ec6fa56a8d acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Reinstate clock_gettime search, but only in libposix4, never link librt.
2008-08-01  Paolo Bonzini  <bonzini@gnu.org>
	    Chris Fairles  <chris.fairles@gmail.com>

	* acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Reinstate clock_gettime
	search, but only in libposix4, never link librt.
	* src/Makefile.am: Reinstate previous change to add GLIBCXX_LIBS.
        * configure: Regenerate.
        * configure.in: Likewise.
        * Makefile.in: Likewise.
        * src/Makefile.in: Likewise.
        * libsup++/Makefile.in: Likewise.
        * po/Makefile.in: Likewise.
        * doc/Makefile.in: Likewise.

Co-Authored-By: Chris Fairles <chris.fairles@gmail.com>

From-SVN: r138519
2008-08-01 14:06:38 +00:00
Chris Fairles 9d4e8554de chrono (duration): Use explicitly defaulted ctor, cctor, dtor and assignment.
2008-07-31  Chris Fairles <chris.fairles@gmail.com>

        * include/std/chrono (duration): Use explicitly defaulted ctor, cctor,
	 dtor and assignment. Add diagnostics as per 20.8.3 paragraphs 2, 3 
	 and 4 in WD. Other minor tweaks.
        * testsuite/20_util/duration/cons/1_neg.cc: Adjust line numbers.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: New.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.

From-SVN: r138434
2008-07-31 19:37:21 +00:00
Paolo Carlini b798df0579 set.h: Minor formatting fixes.
2008-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/set.h: Minor formatting fixes.
	* include/debug/multiset.h: Likewise.
	* include/debug/safe_association.h: Likewise.
	* include/debug/vector: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/string: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.

From-SVN: r138263
2008-07-29 19:34:36 +00:00
Paolo Carlini f2752f1d6e utility: Include <initializer_list>, per the current WP.
2008-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/utility: Include <initializer_list>, per the current WP.

	* testsuite/lib/libstdc++.exp (check_v3_target_cstdint): Tweak,
	don't use -std=gnu++0x unnecessarily.
	* testsuite/18_support/numeric_limits/char16_32_t.cc: Use
	dg-require-cstdint.
	* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Likewise.
	* testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Likewise.

From-SVN: r138255
2008-07-29 17:06:24 +00:00
Paolo Carlini 08df5d3e97 re PR libstdc++/36949 ([C++0x] make_shared does not initialize enable_shared_from_this' internal shared_count)
2008-07-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/36949
	* include/tr1_impl/boost_shared_ptr.h
	(__shared_ptr(_Sp_make_shared_tag, _Alloc, _Args&&...): Call
	__enable_shared_from_this_helper.
	* testsuite/20_util/shared_ptr/creation/36949.cc: New.

From-SVN: r138219
2008-07-28 23:28:16 +00:00
Paolo Carlini 8cbb6b0003 re PR libstdc++/36924 (mt_allocator/deallocate_local_thread-5.cc and ext/mt_allocator/deallocate_local_thread-7.cc fail sometimes)
2008-07-24  Paolo Carlini  <paolo.carlini@oracle.com>

      	PR libstdc++/36924
      	Revert:
      	2008-07-23  Chris Fairles <chris.fairles@gmail.com>

      	* acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
      	Holds the lib that defines clock_gettime (-lrt or -lposix4).
      	* src/Makefile.am: Use it.
      	* configure: Regenerate.
      	* configure.in: Likewise.
      	* Makefile.in: Likewise.
      	* src/Makefile.in: Likewise.
      	* libsup++/Makefile.in: Likewise.
      	* po/Makefile.in: Likewise.
      	* doc/Makefile.in: Likewise.

From-SVN: r138127
2008-07-24 22:47:26 +00:00
Chris Fairles d3098c948b condition_variable: Update to N2691 WD.
2008-07-23  Chris Fairles <chris.fairles@gmail.com>

        * include/std/condition_variable: Update to N2691 WD.
        * include/std/mutex: Likewise.
        * testsuite/30_threads/mutex/cons/assign_neg.cc: Adjust line numbers.
        * testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
        * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.

From-SVN: r138096
2008-07-23 22:17:31 +00:00
Chris Fairles 554cd17b8d acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
2008-07-23  Chris Fairles <chris.fairles@gmail.com>

        * acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
	Holds the lib that defines clock_gettime (-lrt or -lposix4).
        * src/Makefile.am: Use it.
        * configure: Regenerate.
        * configure.in: Likewise.
        * Makefile.in: Likewise.
        * src/Makefile.in: Likewise.
        * libsup++/Makefile.in: Likewise.
        * po/Makefile.in: Likewise.
        * doc/Makefile.in: Likewise.

From-SVN: r138087
2008-07-23 14:49:00 +00:00
Paolo Carlini 1e58e43be9 sso_string_base.h (__sso_string_base<>::__sso_string_base(std::initializer_list<_CharT>, const _Alloc&)): Remove.
2008-07-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/sso_string_base.h
	(__sso_string_base<>::__sso_string_base(std::initializer_list<_CharT>,
	const _Alloc&)): Remove.
	* include/ext/rc_string_base.h
	(__rc_string_base<>::__rc_string_base(std::initializer_list<_CharT>,
	const _Alloc&)): Likewise.
	* include/ext/vstring.h
	(__versa_string<>::__versa_string(std::initializer_list<_CharT>,
	const _Alloc&)): Adjust.

From-SVN: r138058
2008-07-22 13:52:14 +00:00
Jason Merrill 988499f434 Add initializer_list support as per N2679.
* include/debug/unordered_map: Add initializer_list support.
        * include/debug/safe_association.h: Likewise.
        * include/debug/unordered_set: Likewise.
        * include/debug/vector: Likewise.
        * include/debug/deque: Likewise.
        * include/debug/map.h: Likewise.
        * include/debug/set.h: Likewise.
        * include/debug/string: Likewise.
        * include/debug/list: Likewise.
        * include/debug/multimap.h: Likewise.
        * include/tr1_impl/unordered_map: Likewise.
        * include/tr1_impl/hashtable: Likewise.
        * include/tr1_impl/unordered_set: Likewise.
        * include/tr1_impl/regex: Likewise.
        * include/std/valarray: Likewise.
        * include/std/unordered_map: Likewise.
        * include/std/unordered_set: Likewise.
        * include/bits/stl_list.h: Likewise.
        * include/bits/stl_map.h: Likewise.
        * include/bits/stl_set.h: Likewise.
        * include/bits/basic_string.h: Likewise.
        * include/bits/basic_string.tcc: Likewise.
        * include/bits/stl_multimap.h: Likewise.
        * include/bits/stl_vector.h: Likewise.
        * include/bits/stl_deque.h: Likewise.
        * include/bits/stl_multiset.h: Likewise.
        * include/bits/stl_bvector.h: Likewise.
        * include/ext/vstring.h: Likewise.
        * include/ext/rc_string_base.h: Likewise.
        * include/ext/sso_string_base.h: Likewise.
        * src/Makefile.am (w?string-inst): Build with -std=gnu++0x.
        * src/Makefile.in: Likewise.
        * config/abi/pre/gnu.ver: Add new w?string exports.
...

From-SVN: r138043
2008-07-21 15:40:39 -04:00
Paolo Carlini 52e07aa164 2008-07-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
	(assert_node_consistent): Avoid ambiguous else warning.

	* include/ext/pb_ds/detail/debug_map_base.hpp: Include <iostream>.

	* include/bits/c++config: In debug-mode (and parallel-mode) set
	_GLIBCXX_EXTERN_TEMPLATE to -1, not 0, thus disabling extern
	templates only for basic_string (per libstdc++/21674).
	* include/bits/basic_string.tcc: Use extern templates when
	_GLIBCXX_EXTERN_TEMPLATE > 0.

From-SVN: r137990
2008-07-19 19:58:52 +00:00
Paolo Carlini 77f376d9c7 vector (insert(iterator, _Tp&&), [...]): Enable only when _Tp != bool.
2008-07-16  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/vector (insert(iterator, _Tp&&), push_back(_Tp&&)):
	Enable only when _Tp != bool.

	* testsuite/25_algorithms/heap/1.cc: Avoid unused variable warnings.

From-SVN: r137962
2008-07-18 20:11:21 +00:00
Paolo Carlini 751a3fcab3 assign_neg.cc: Adjust dg-error lines.
2008-07-16  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Adjust
	dg-error lines.
	* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
	* testsuite/20_util/duration/cons/1_neg.cc: Likewise.

	* include/tr1_impl/type_traits: Fix comment typo.

From-SVN: r137874
2008-07-16 10:10:41 +00:00
Paolo Carlini 20d85a9960 unique_ptr.h: Remove stray character.
2008-07-16  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/unique_ptr.h: Remove stray character.

From-SVN: r137872
2008-07-16 09:04:16 +00:00
Benjamin Kosnik ad68e9fce0 user.cfg.in: Add complex, ratio, intializer_list.
2008-07-15  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/doxygen/user.cfg.in: Add complex, ratio,
	intializer_list.
	(PREDEFINED): Add _GLIBCXX_USE_C99_STDINT_TR1.
	* doc/doxygen/doxygroups.cc: Add std::chrono.
	* include/bits/unique_ptr.h (default_delete, unique_ptr): Add markup.
	* libsupc++/initializer_list (initializer_list): Same.
	* include/std/ratio: Same.
	* include/std/chrono: Same.
	* include/std/complex: Disambiguate file markup.

From-SVN: r137868
2008-07-16 07:01:23 +00:00
Chris Fairles 15e38d0dce chrono: New, as per N2661.
2008-07-15  Chris Fairles  <chris.fairles@gmail.com>

        * include/std/chrono: New, as per N2661.
        * src/chrono.cc: New.
        * include/Makefile.am: Update.
        * src/Makefile.am: Likewise.
        * include/Makefile.in: Regenerate.
        * src/Makefile.in: Likewise.
        * acinclude.m4: Add tests for clock_gettime and gettimeofday that
	define _GLIBCXX_HAS_CLOCK_GETTIME and/or _GLIBCXX_HAS_GETTIMEOFDAY.
        * configure.ac: Use them.
        * configure: Regenerate.
        * config.h.in: Likewise.
        * config/abi/pre/gnu.ver: Add symbols for system_clock::now() and
        system_clock::is_monotonic.
        * testsuite/20_util/duration/cons/1.cc: New.
        * testsuite/20_util/duration/cons/2.cc: Likewise.
        * testsuite/20_util/duration/cons/1_neg.cc: Likewise.
        * testsuite/20_util/duration/requirements/explicit_instantiation/
        explicit_instantiation.cc: Likewise.
        * testsuite/20_util/duration/arithmetic/1.cc: Likewise.
        * testsuite/20_util/duration/arithmetic/2.cc: Likewise.
        * testsuite/20_util/duration/comparisons/1.cc: Likewise.
        * testsuite/20_util/time_point/requirements/explicit_instantiation/
        explicit_instantiation.cc: Likewise.
        * testsuite/20_util/time_point/1.cc: Likewise.
        * testsuite/20_util/time_point/2.cc: Likewise.
        * testsuite/20_util/time_point/3.cc: Likewise.
        * testsuite/20_util/clocks/1.cc: Likewise.
        * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Add
        missing headers.
        * testsuite/17_intro/headers/c++200x/all.cc: Likewise.
        * include/precompiled/stdc++.h: Likewise and remove <date_time>.
        * doc/doxygen/user.cfg.in: Likewise.

From-SVN: r137858
2008-07-15 23:23:23 +00:00
Paolo Carlini 91efdb828d re PR libstdc++/36832 (error compiling with crope)
2008-07-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/36832
	* include/ext/rope (_Destroy_const): Add.
	(rope<>::copy): Call it.
	* testsuite/ext/rope/36832.cc: New.

From-SVN: r137829
2008-07-15 10:14:40 +00:00
Johannes Singler cbcd1e4520 find_selectors.h: Correct name for include guard #ifndef.
2008-07-15  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/find_selectors.h:
        Correct name for include guard #ifndef.
        * include/parallel/balanced_quicksort.h: Likewise.
        * include/parallel/unique_copy.h: Likewise.
        * include/parallel/multiway_mergesort.h: Likewise.
        * include/parallel/checkers.h: Likewise.
        * include/parallel/[various files]:
        Add/correct comment for #endif of include guard (at end of file)

From-SVN: r137827
2008-07-15 10:06:58 +00:00
Paolo Carlini d5740f0288 date_time: Remove, per N2549, in WP.
2008-07-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/date_time: Remove, per N2549, in WP.
	* src/date_time.cc: Likewise.
	* config/abi/pre/gnu.ver: Remove <date_time> symbols.
	* include/Makefile.am: Remove date_time in std headers.
	* src/Makefile.am: Remove date_time.cc to source files.
	* include/Makefile.in: Regenerate.
	* src/Makefile.in: Likewise.
	* testsuite/31_date_time/headers/date_time/types_std.cc: Remove.
	* testsuite/31_date_time/headers/date_time/std_c++0x_neg.cc: Likewise.
	* testsuite/31_date_time/headers/date_time/functions_std.cc: Likewise.
	* testsuite/31_date_time/headers/date_time/synopsis.cc: Likewise.
	* testsuite/31_date_time/nanoseconds/requirements/traits.cc: Likewise.
	* testsuite/31_date_time/nanoseconds/requirements/duration.cc: Likewise.
	* testsuite/31_date_time/system_time/requirements: Likewise.
	* testsuite/31_date_time/system_time/requirements/traits.cc: Likewise.
	* testsuite/17_intro/headers/c++200x/all.cc: Adjust.
	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Adjust.

From-SVN: r137736
2008-07-12 10:16:16 +00:00
Johannes Singler 38a28aabc1 balanced_quicksort.h: (qsb_divide) Replace "*end" by "*(end - 1)" in assertion.
2008-07-10  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/balanced_quicksort.h:
        (qsb_divide) Replace "*end" by "*(end - 1)" in assertion.

From-SVN: r137691
2008-07-10 08:19:26 +00:00
Andreas Beckmann c174eba24a re PR libstdc++/36552 (includes itself: ext/pb_ds/detail/left_child_next_sibling_heap_/null_metadata.hpp)
2008-07-09  Andreas Beckmann  <gcc@abeckmann.de>

	PR libstdc++/36552
	* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
	null_metadata.hpp: Remove self-include.

From-SVN: r137677
2008-07-10 00:05:27 +00:00
Johannes Singler 361eefe75d random_shuffle.h: (sequential_random_shuffle) Copy data back.
2008-07-09  Johannes Singler  <singler@ira.uka.de>

         * include/parallel/random_shuffle.h:
         (sequential_random_shuffle) Copy data back.
         * testsuite/25_algorithms/random_shuffle/1.cc:
         New. Generic random_shuffle functionality test.

From-SVN: r137658
2008-07-09 15:26:56 +00:00
Chris Fairles cfa9a96b64 type_traits: Add common_type.
2008-07-08  Chris Fairles  <chris.fairles@gmail.com>

        * include/std/type_traits: Add common_type.
        * testsuite/20_util/common_type/requirements/
	explicit_instantiation.cc: New.
        * testsuite/20_util/common_type/requirements/
	typedefs-1.cc: Likewise.

From-SVN: r137618
2008-07-08 11:59:22 +00:00
Paolo Carlini a7543cfdcd libstdc++.exp (check_v3_target_stdint): New.
2008-07-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/lib/libstdc++.exp (check_v3_target_stdint): New.
	* testsuite/lib/dg-options.exp (dg-require-cstdint): New.
	* testsuite/20_util/ratio/cons/cons1.cc: Use it.
	* testsuite/20_util/ratio/cons/cons_overflow.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops1.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops2.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops3.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops_overflow.cc: Likewise.
	* testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
	* testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.

	* include/std/type_traits: Fix comment typo.

From-SVN: r137612
2008-07-08 01:11:18 +00:00
Roger Sayle c9faf4654f system_error (is_error_code_enum): Use identifier _Tp instead of _T to avoid conflict with system macro on Darwin.
* include/std/system_error (is_error_code_enum): Use identifier
	_Tp instead of _T to avoid conflict with system macro on Darwin.
	(is_error_condition_enum): Likewise.

From-SVN: r137529
2008-07-06 17:38:08 +00:00
Paolo Carlini b49aadf8b6 postypes.h: Do not include <stdint.h>.
2008-07-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/postypes.h: Do not include <stdint.h>.

	* include/Makefile.am: Reorder.

From-SVN: r137505
2008-07-05 12:36:03 +00:00