Paolo Carlini
033b71cea1
type_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.
...
2010-10-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.
* include/std/functional (_Has_result_type_helper,
_Has_result_type): Remove; use the above to define __has_result_type.
* include/bits/stl_iterator_base_types.h: Use the above to define
__has_iterator_category.
* include/bits/allocator.h (__has_allocator_type): Use the above.
* include/bits/cpp_type_traits.h (__has_iterator_category,
__is_iterator): Remove.
From-SVN: r164993
2010-10-05 15:53:35 +00:00
Paolo Carlini
6703f185d4
functional (function<>::swap): Use std::swap.
...
2010-10-04 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/functional (function<>::swap): Use std::swap.
* include/tr1/functional (function<>::swap): Likewise.
From-SVN: r164952
2010-10-04 17:28:24 +00:00
Paolo Carlini
b8b4301eec
[multiple changes]
...
2010-09-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/Makefile.am: Add debug/forward_list.
* include/Makefile.in: Regenerate.
* testsuite/util/testsuite_container_traits.h (traits_base):
Add has_erase_after and hash_insert_after typedefs.
(traits<forward_list<>>): Adjust.
* testsuite/util/exception/safety.h (erase_point, erase_range,
insert_point): Deal correctly with forward_list.
* include/Makefile.am: Add.
2010-09-29 François Dumont <francois.cppdevs@free.fr>
* src/debug.cc: Add forward_list specific debug messages.
* include/debug/forward_list: New.
* include/debug/formatter.h: Add debug message ids and before begin
iterator state.
* include/debug/macros.h (__glibcxx_check_insert_after,
__glibcxx_check_insert_range_after, __glibcxx_check_erase_after,
__glibcxx_check_erase_range_after): Add.
* include/debug/safe_iterator.h (_BeforeBeginHelper): Add.
(_Safe_iterator<>::_M_before_dereferenceable,
_Safe_iterator<>::_M_is_before_begin): Add.
(_Safe_iterator<>::_M_dereferenceable, _Safe_iterator<>::_M_is_end,
_Safe_iterator<>::_M_incrementable): Adjust.
* include/std/forward_list: Include debug/forward when _GLIBCXX_DEBUG
defined.
* include/bits/forward_list.h, forward_list.tcc: Put in std::__norm
when debug mode is active.
* testsuite/23_containers/forward_list/capacity/1.cc: Fix to compile
even in debug mode.
* testsuite/23_containers/forward_list/debug/erase_after1.cc,
erase_after2.cc, erase_after3.cc, erase_after4.cc, erase_after5.cc,
insert_after1.cc,erase_after6.cc, erase_after7.cc, insert_after2.cc,
erase_after8.cc, insert_after3.cc, erase_after9.cc: New.
From-SVN: r164717
2010-09-29 11:56:34 +00:00
Paolo Carlini
f3961bdf99
cmath (__pow_helper): Remove.
...
2010-09-27 Paolo Carlini <paolo.carlini@oracle.com>
* include/c_std/cmath (__pow_helper): Remove.
(__cmath_power): Remove declaration.
* include/c_global/cmath: Likewise.
* include/std/complex (__complex_pow_unsigned): Add.
(pow(const complex<_Tp>&, int)): Use the latter.
* include/c_std/cmath.tcc: Remove file.
* include/c_global/cmath.tcc: Likewise.
* acinclude.m4: Adjust.
* include/Makefile.am: Likewise.
* configure: Regenerate.
* include/Makefile.in: Likewise.
From-SVN: r164645
2010-09-27 09:27:05 +00:00
David Krauss
3531cf5ef3
re PR libstdc++/45628 (std::fstream::tellg invalidates I/O buffer)
...
2010-09-22 David Krauss <potswa@mac.com>
PR libstdc++/45628
* include/bits/fstream.tcc (basic_filebuf::underflow): Add state
transition to avoid modality requiring seekoff(0,ios::cur).
(basic_filebuf::pbackfail): Likewise.
(basic_filebuf::overflow): Likewise.
(basic_filebuf::_M_seek): Avoid minor unnecessary conversion.
(basic_filebuf::seekoff): Remove code to _M_get_ext_pos; make
(0, ios::cur) a special case preserving buffer contents.
(basic_filebuf::_M_get_ext_pos): New function to obtain status
about codecvt extern_t buffer for overflow and seekoff.
* include/std/fstream (basic_filebuf::_M_get_ext_pos): Likewise.
* config/abi/pre/gnu.ver: Export new symbols.
* testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: New,
verifies that seekoff(0, ios::cur) preserves buffers.
* testsuite/27_io/basic_filebuf/seekoff/char/45628-2.cc: Likewise.
for codecvt case. More lenient as it may still flush put area.
* testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Modify to
check that seekoff is not required between read and write.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Remove.
* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Likewise.
* testsuite/util/testsuite_character.h (codecvt::do_length): Comply
with 22.2.1.5.2/10 "Returns ... the LARGEST value in the range..."
From-SVN: r164529
2010-09-22 19:40:43 +00:00
Paolo Carlini
5d64ee190c
functional_hash.h (__hash_base): Add.
...
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (__hash_base): Add.
(hash): Derive from __hash_base instead.
* include/debug/bitset (hash): Likewise.
* include/debug/vector (hash): Likewise.
* include/std/system_error (hash): Likewise.
* include/std/thread (hash): Likewise.
* include/std/bitset (hash): Likewise.
* include/profile/bitset (hash): Likewise.
* include/profile/vector (hash): Likewise.
* include/bits/basic_string.h (hash): Likewise.
* include/bits/stl_bvector.h (hash): Likewise.
* include/std/typeindex (hash): Do not derive from unary_function,
add result_type and argument_type typedefs; trim includes.
From-SVN: r164528
2010-09-22 17:50:36 +00:00
Paolo Carlini
bafa9791ac
typeindex: New.
...
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/typeindex: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/precompiled/stdc++.h: Add.
* testsuite/20_util/typeindex/comparison_operators.cc: New.
* testsuite/20_util/typeindex/hash.cc: Likewise.
* testsuite/20_util/typeindex/hash_code.cc: Likewise.
* testsuite/20_util/typeindex/name.cc: Likewise.
* testsuite/18_support/type_info/hash_code.cc: Tweak.
From-SVN: r164521
2010-09-22 12:04:08 +00:00
Luc Hermitte
fc99f7809e
re PR libstdc++/45713 (sizeof std::bitset<ULONG_MAX> == 1)
...
2010-09-17 Luc Hermitte <hermitte@free.fr>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/45713
* include/std/bitset: Fix _GLIBCXX_BITSET_WORDS macro.
* testsuite/23_containers/bitset/45713.cc: New.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r164388
2010-09-18 01:29:31 +00:00
Paolo Carlini
b5fbd147fe
system_error (system_error::system_error(error_code), [...]): Fix for what() to return the NBTS recommended in the Note in 19.5.6.2/14.
...
2010-09-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/system_error (system_error::system_error(error_code),
system_error(error_code, const string&), system_error(int, const
error_category&), system_error(int, const error_category&,
const string&)): Fix for what() to return the NBTS recommended in
the Note in 19.5.6.2/14.
* testsuite/19_diagnostics/system_error/cons-1.cc: Adjust.
* testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-4.cc: Tidy includes.
From-SVN: r164339
2010-09-16 14:55:37 +00:00
Paolo Carlini
f941c3e212
complex (complex<float>::operator=(float), [...]): Simplify a tad...
...
2010-09-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/complex (complex<float>::operator=(float),
complex<float>::operator+=(float),
complex<float>::operator-=(float),
complex<double>::operator=(double),
complex<double>::operator+=(double),
complex<double>::operator-=(double),
complex<long double>::operator=(long double),
complex<long double>::operator+=(long double),
complex<long double>::operator-=(long double)): Simplify a tad,
just forward to the underlying __complex__ T operators, as
operator*= and operator/= already do.
* include/std/complex (complex<float>, complex<double>,
complex<long double>): Simplify spelling of return types, just
say complex, instead of complex<float>, complex<double>,
complex<long double>, respectively.
From-SVN: r164337
2010-09-16 12:39:13 +00:00
Matt Austern
e7f72940d2
hash_bytes.cc: New file...
...
2010-09-13 Matt Austern <austern@google.com>
* src/hash_bytes.cc: New file, exports _Hash_bytes (a Murmur hash),
and _Fnv_hash_bytes (based on a FNV algorithm).
* src/compatibility-c++0x.cc (hash<string>::operator(),
hash<const string&>::operator(), hash<wstring>::operator(),
hash<const wstring&>::operator(), hash<error_code>::operator()):
Adjust, use _Hash_bytes.
* include/std/system_error (hash<error_code>::operator()): Likewise.
* include/std/thread (hash<thread::id>operator()): Likewise.
* include/std/bitset (hash<bitset>operator()): Likewise.
* include/bits/basic_string.h (hash<string>::operator(),
hash<wstring>::operator(), hash<u16string>::operator(),
hash<u32string>::operator()): Adjust.
* include/bits/vector.tcc (hash<vector<bool>>::operator()): Adjust.
* include/bits/functional_hash.h (_Hash_bytes, _Fnv_hash_bytes):
Declare.
(struct _Hash_impl, struct _Fnv_hash_impl): Add, use _Hash_bytes
and _Fnv_hash_bytes, respectively.
(hash<float>::operator(), hash<double>::operator()): Adjust.
* config/abi/pre/gnu.ver: Add exports.
* src/Makefile.am: Add.
* src/Makefile.in: Regenerate.
From-SVN: r164253
2010-09-13 18:23:56 +00:00
Paolo Carlini
b7c3f5eb21
re PR libstdc++/45398 ([C++0x] Missing atomic<_Tp*>::store definition)
...
2010-09-07 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/45398
* include/std/atomic (atomic<_TP*>::store): Define.
* include/std/atomic (atomic<_TP*>::load, exchange): Define inline.
From-SVN: r163950
2010-09-07 14:05:23 +00:00
Paolo Carlini
5aadb69b90
cons_overflow_neg.cc: Avoid -Wall warnings.
...
2010-08-10 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Avoid -Wall
warnings.
* include/bits/shared_ptr.h (shared_ptr<>::shared_ptr
(const shared_ptr<>&), shared_ptr(shared_ptr<>&&), weak_ptr<>::
weak_ptr(const weak_ptr<>&), weak_ptr(const shared_ptr<>&)):
Constrain appropriately via std::is_convertible, etc.
* include/bits/shared_ptr_base.h: Likewise.
* include/bits/unique_ptr.h (default_delete<>::
default_delete(const default_delete<>&),
unique_ptr<>::unique_ptr(unique_ptr<>&&), operator=(unique_ptr<>&&)):
Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
line numbers.
* testsuite/20_util/shared_ptr/cons/43820.cc: Likewise.
* include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(auto_ptr<>&&)):
Add.
* include/std/memory: Adjust includes order.
* testsuite/20_util/unique_ptr/cons/auto_ptr.cc: New.
* testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Minor tweaks.
From-SVN: r163053
2010-08-10 10:08:56 +00:00
Paolo Carlini
0a5c2065bd
re PR libstdc++/45228 ([C++0x] Can't copy-construct "tuple<int,int,int>" from "const tuple<int,int,int>" rvalue)
...
2010-08-10 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/45228
* include/std/tuple (tuple<typename... _Elements>): Constrain
converting constructors and assignment operators with
sizeof...(_UElements) == sizeof...(_Elements).
(tuple(tuple<_UElements...>&): Remove.
(tuple<typename _T1>): Add.
* testsuite/20_util/tuple/cons/45228.cc: New.
* testsuite/20_util/tuple/cons/converting.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
dg-error line number.
* include/std/tuple (_Tuple_impl<>::_Tuple_impl(const _Tuple_impl&)):
Defaulted.
* include/std/tuple (tuple<typename _T1, typename _T2>
::operator=(pair<_U1, _U2>&&)): Use forward.
From-SVN: r163049
2010-08-10 07:17:44 +00:00
Jason Merrill
b2edc92147
* include/std/thread: Add deleted thread(thread&).
...
From-SVN: r162954
2010-08-06 15:41:23 -04:00
Paolo Carlini
00e9a94486
tuple (pack_arguments): Rename to forward_as_tuple and simplify, per US 98 and US 99.
...
2010-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple (pack_arguments): Rename to forward_as_tuple
and simplify, per US 98 and US 99.
* testsuite/20_util/tuple/creation_functions/pack_arguments.cc:
Rename to...
* testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
... this, adjust.
* testsuite/20_util/pair/piecewise.cc: Adjust.
From-SVN: r162948
2010-08-06 14:46:08 +00:00
Paolo Carlini
c2653d8fc2
tuple (begin, end): Remove per GB 87.
...
2010-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple (begin, end): Remove per GB 87.
* testsuite/20_util/tuple/range_access.cc: Remove.
From-SVN: r162942
2010-08-06 11:28:50 +00:00
Paolo Carlini
cd6b4a4bca
ratio (ratio_less): Improve, use ratio_divide to avoid more overflows.
...
2010-08-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/ratio (ratio_less): Improve, use ratio_divide to avoid
more overflows.
* testsuite/20_util/ratio/comparisons/comp1.cc: Extend.
* testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
From-SVN: r162941
2010-08-06 08:58:27 +00:00
Paolo Carlini
9316258dcb
utility (begin, end): Remove per GB 85.
...
2010-08-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/utility (begin, end): Remove per GB 85.
* testsuite/20_util/pair/range_access.cc: Remove.
* include/std/functional (function<>::function()): Remove explicit,
per JP 3.
From-SVN: r162900
2010-08-05 08:45:26 +00:00
Paolo Carlini
f67a9881a8
[multiple changes]
...
2010-07-27 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/vstring_util.h: Include bits/range_access.h.
* testsuite/ext/vstring/range_access.cc: New test.
2010-07-27 Ed Smith-Rowland <3dw4rd@verizon.net>
* include/bits/range_access.h: New.
* include/Makefile.in: Add bits/range_access.h.
* include/Makefile.am: Regenerate.
* include/std/array: Include bits/range_access.h.
* include/std/deque: Ditto.
* include/std/forward_list: Ditto.
* include/std/iterator: Ditto.
* include/std/list: Ditto.
* include/std/map: Ditto.
* include/std/regex: Ditto.
* include/std/set: Ditto.
* include/std/string: Ditto.
* include/std/unordered_map: Ditto.
* include/std/unordered_set: Ditto.
* include/std/vector: Ditto.
* include/std/valarray: Add begin() and end().
* libsupc++/initializer_list: Ditto.
* include/tr1_impl/utility: Add begin() and end().
* include/std/tuple: Ditto.
* testsuite/24_iterators/headers/iterator/range_access.cc: New test.
* testsuite/24_iterators/range_access.cc: Ditto.
* testsuite/28_regex/range_access.cc: Ditto.
* testsuite/18_support/initializer_list/range_access.cc: Ditto.
* testsuite/21_strings/basic_string/range_access.cc: Ditto.
* testsuite/26_numerics/valarray/range_access.cc: Ditto.
* testsuite/23_containers/unordered_map/range_access.cc: Ditto.
* testsuite/23_containers/multimap/range_access.cc: Ditto.
* testsuite/23_containers/set/range_access.cc: Ditto.
* testsuite/23_containers/unordered_multimap/range_access.cc: Ditto.
* testsuite/23_containers/forward_list/range_access.cc: Ditto.
* testsuite/23_containers/unordered_set/range_access.cc: Ditto.
* testsuite/23_containers/vector/range_access.cc: Ditto.
* testsuite/23_containers/deque/range_access.cc: Ditto.
* testsuite/23_containers/multiset/range_access.cc: Ditto.
* testsuite/23_containers/list/range_access.cc: Ditto.
* testsuite/23_containers/unordered_multiset/range_access.cc: Ditto.
* testsuite/23_containers/map/range_access.cc: Ditto.
* testsuite/23_containers/array/range_access.cc: Ditto.
* testsuite/20_util/tuple/range_access.cc: Ditto.
* testsuite/20_util/pair/range_access.cc: Ditto.
From-SVN: r162578
2010-07-27 17:27:06 +00:00
Paolo Carlini
8e7d962aa5
type_traits (is_convertible): Use SFINAE.
...
2010-07-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (is_convertible): Use SFINAE.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r162056
2010-07-11 09:13:26 +00:00
Stephen M. Webb
849cab7b75
Initial regex implementation.
...
2010-06-25 Stephen M. Webb <stephen.webb@bregmasoft.ca>
Initial regex implementation.
* include/std/regex: Modified to use bits/regex_* headers.
* include/bits/regex_compiler.h: New file.
* include/bits/regex_constants.h: New file.
* include/bits/regex_cursor.h: New file.
* include/bits/regex_error.h: New file.
* include/bits/regex_grep_matcher.h: New file.
* include/bits/regex_grep_matcher.tcc: New file.
* include/bits/regex.h: New file.
* include/bits/regex_nfa.h: New file.
* include/bits/regex_nfa.tcc: New file.
* include/Makefile.am: Added above new files.
* include/Makefile.in: Regenerated.
* testsuite/28_regex/02_definitions: New file.
* testsuite/28_regex/03_requirements: New file.
* testsuite/28_regex/03_requirements/typedefs.cc: New file.
* testsuite/28_regex/04_header: New file.
* testsuite/28_regex/04_header/regex: New file.
* testsuite/28_regex/04_header/regex/std_c++0x_neg.cc: New file.
* testsuite/28_regex/05_constants: New file.
* testsuite/28_regex/05_constants/error_type.cc: New file.
* testsuite/28_regex/05_constants/match_flag_type.cc: New file.
* testsuite/28_regex/05_constants/syntax_option_type.cc: New file.
* testsuite/28_regex/06_exception_type: New file.
* testsuite/28_regex/06_exception_type/regex_error.cc: New file.
* testsuite/28_regex/07_traits: New file.
* testsuite/28_regex/07_traits/char: New file.
* testsuite/28_regex/07_traits/char/ctor.cc: New file.
* testsuite/28_regex/07_traits/char/isctype.cc: New file.
* testsuite/28_regex/07_traits/char/length.cc: New file.
* testsuite/28_regex/07_traits/char/lookup_classname.cc: New file.
* testsuite/28_regex/07_traits/char/lookup_collatename.cc: New file.
* testsuite/28_regex/07_traits/char/transform.cc: New file.
* testsuite/28_regex/07_traits/char/transform_primary.cc: New file.
* testsuite/28_regex/07_traits/char/translate.cc: New file.
* testsuite/28_regex/07_traits/char/translate_nocase.cc: New file.
* testsuite/28_regex/07_traits/char/value.cc: New file.
* testsuite/28_regex/07_traits/wchar_t: New file.
* testsuite/28_regex/07_traits/wchar_t/ctor.cc: New file.
* testsuite/28_regex/07_traits/wchar_t/length.cc: New file.
* testsuite/28_regex/07_traits/wchar_t/transform.cc: New file.
* testsuite/28_regex/07_traits/wchar_t/translate.cc: New file.
* testsuite/28_regex/07_traits/wchar_t/translate_nocase.cc: New file.
* testsuite/28_regex/07_traits/wchar_t/value.cc: New file.
* testsuite/28_regex/08_basic_regex: New file.
* testsuite/28_regex/08_basic_regex/assign: New file.
* testsuite/28_regex/08_basic_regex/assign/char: New file.
* testsuite/28_regex/08_basic_regex/assign/char/cstring.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/char/cstring_op.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/char/moveable.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/char/pstring.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/char/range.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/char/string.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/char/string_op.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/wchar_t: New file.
* testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring_op.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/wchar_t/pstring.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/wchar_t/range.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/wchar_t/string.cc: New file.
* testsuite/28_regex/08_basic_regex/assign/wchar_t/string_op.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors: New file.
* testsuite/28_regex/08_basic_regex/ctors/basic: New file.
* testsuite/28_regex/08_basic_regex/ctors/basic/cstring.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/basic/pstring_char.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/basic/pstring_wchar_t.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/basic/string_range_01_02_03.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/char: New file.
* testsuite/28_regex/08_basic_regex/ctors/char/cstring_awk.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/char/cstring.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/char/cstring_ecma.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/char/cstring_egrep.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/char/cstring_grep.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/char/default.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/char/range.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/copy_char.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/extended: New file.
* testsuite/28_regex/08_basic_regex/ctors/extended/cstring.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/extended/string_range_01_02_03.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/move_char.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/string_char.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/string_wchar_t.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/wchar_t: New file.
* testsuite/28_regex/08_basic_regex/ctors/wchar_t/cstring.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/wchar_t/default.cc: New file.
* testsuite/28_regex/08_basic_regex/ctors/wchar_t/range.cc: New file.
* testsuite/28_regex/08_basic_regex/regex.cc: New file.
* testsuite/28_regex/09_sub_match: New file.
* testsuite/28_regex/09_sub_match/cast_char.cc: New file.
* testsuite/28_regex/09_sub_match/cast_wchar_t.cc: New file.
* testsuite/28_regex/09_sub_match/length.cc: New file.
* testsuite/28_regex/09_sub_match/typedefs.cc: New file.
* testsuite/28_regex/10_match_results: New file.
* testsuite/28_regex/10_match_results/ctors: New file.
* testsuite/28_regex/10_match_results/ctors/char: New file.
* testsuite/28_regex/10_match_results/ctors/char/default.cc: New file.
* testsuite/28_regex/10_match_results/ctors/wchar_t: New file.
* testsuite/28_regex/10_match_results/ctors/wchar_t/default.cc: New file.
* testsuite/28_regex/10_match_results/typedefs.cc: New file.
* testsuite/28_regex/11_algorithms: New file.
* testsuite/28_regex/11_algorithms/02_match: New file.
* testsuite/28_regex/11_algorithms/02_match/basic: New file.
* testsuite/28_regex/11_algorithms/02_match/basic/string_01.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/basic/string_range_00_03.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/basic/string_range_01_03.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/basic/string_range_02_03.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/extended: New file.
* testsuite/28_regex/11_algorithms/02_match/extended/cstring_plus.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/extended/cstring_questionmark.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/extended/string_any.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/extended/string_range_00_03.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/extended/string_range_01_03.cc: New file.
* testsuite/28_regex/11_algorithms/02_match/extended/string_range_02_03.cc: New file.
* testsuite/28_regex/12_iterators: New file.
* testsuite/28_regex/12_iterators/regex_iterator: New file.
* testsuite/28_regex/12_iterators/regex_iterator/ctors: New file.
* testsuite/28_regex/12_iterators/regex_iterator/ctors/char: New file.
* testsuite/28_regex/12_iterators/regex_iterator/ctors/char/default.cc: New file.
* testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t: New file.
* testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t/default.cc: New file.
* testsuite/28_regex/12_iterators/regex_iterator/typedefs.cc: New file.
* testsuite/28_regex/12_iterators/regex_token_iterator: New file.
* testsuite/28_regex/12_iterators/regex_token_iterator/ctors: New file.
* testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char: New file.
* testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char/default.cc: New file.
* testsuite/28_regex/12_iterators/regex_token_iterator/ctors/wchar_t: New file.
* testsuite/28_regex/12_iterators/regex_token_iterator/ctors/wchar_t/default.cc: New file.
* testsuite/28_regex/12_iterators/regex_token_iterator/typedefs.cc: New file.
* testsuite/28_regex/13_ecmascript: New file.
From-SVN: r161410
2010-06-25 19:27:16 +00:00
Jonathan Wakely
cff9004472
tuple (_Swallow_assign::operator=): Add const.
...
2010-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/tuple (_Swallow_assign::operator=): Add const.
(ignore): Replace anonymous namespace member with const instance.
From-SVN: r160613
2010-06-11 16:02:33 +01:00
Paolo Carlini
d247d6625a
tuple (tuple(const tuple&)): Define explicitly-defaulted.
...
2010-06-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple (tuple(const tuple&)): Define explicitly-defaulted.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
line number.
From-SVN: r160539
2010-06-10 12:24:31 +00:00
Paolo Carlini
87b2e74657
re PR libstdc++/44487 ([C++0x] pair of references doesn't work)
...
2010-06-10 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/44487
* include/bits/stl_pair.h (pair(pair&&)): Remove.
(pair(pair<_U1, _U2>&&): Use forward, consistently with Bullet 5
of LWG 1326.
* include/std/tuple (tuple(pair<_U1, _U2>&&)): Likewise.
* testsuite/20_util/pair/44487.cc: Add.
* testsuite/20_util/tuple/cons/44487.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
line numbers.
From-SVN: r160528
2010-06-10 10:24:46 +00:00
Paolo Carlini
e4f32cb0a5
type_traits (is_nothrow_constructible): Add.
...
2010-06-09 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (is_nothrow_constructible): Add.
(declval): Add noexcept specification.
* testsuite/util/testsuite_tr1.h (struct NothrowExplicitClass,
ThrowExplicitClass, NoexceptExplicitClass, ExceptExplicitClass):
Add.
* testsuite/20_util/is_nothrow_constructible/value.cc: New.
* testsuite/20_util/is_nothrow_constructible/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/is_nothrow_constructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r160523
2010-06-10 00:43:50 +00:00
Paolo Carlini
6f5e9b8df6
type_traits (has_nothrow_assign): Rename to has_nothrow_copy_assign.
...
2010-06-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (has_nothrow_assign): Rename to
has_nothrow_copy_assign.
(has_trivial_assign): Rename to has_trivial_copy_assign.
* testsuite/20_util/has_nothrow_copy_assign/value.cc: New.
* testsuite/20_util/has_nothrow_copy_assign/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/has_nothrow_copy_assign/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
* testsuite/20_util/has_trivial_copy_assign/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/has_trivial_copy_assign/requirements/
explicit_instantiation.cc: Likewise.
From-SVN: r160443
2010-06-08 17:50:54 +00:00
Jonathan Wakely
6d00745b6d
[multiple changes]
...
2010-06-05 Magnus Fromreide <magfr@lysator.liu.se>
Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/functional (function): Add nullptr_t support.
* include/bits/shared_ptr.h (shared_ptr): Likewise.
* include/bits/unique_ptr.h (unique_ptr): Likewise.
2010-06-05 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/shared_ptr_base.h (__shared_ptr): Add nullptr_t support.
(__shared_count): Add nullptr_t support and make constructors explicit.
* testsuite/20_util/shared_ptr/cons/43820.cc: Adjust.
* testsuite/20_util/shared_ptr/cons/nullptr.cc: New.
* testsuite/20_util/unique_ptr/cons/nullptr.cc: New.
* testsuite/20_util/unique_ptr/assign/nullptr.cc: New.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
From-SVN: r160324
2010-06-05 18:43:29 +01:00
Paolo Carlini
8fc810787b
c++config (std::size_t, [...]): Provide typedefs.
...
2010-06-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/c++config (std::size_t, std::ptrdiff_t,
std::nullptr_t): Provide typedefs.
* include/c_std/cstddef: Don't provide std::size_t and
std::ptrdiff_t here.
* include/c_global/cstddef: Likewise.
* src/condition_variable.cc: Don't include <cstddef>,
don't use NULL, use std::size_t and std::ptrdiff_t.
* src/mt_allocator.cc: Likewise.
* src/localename.cc: Likewise.
* src/chrono.cc: Likewise.
* src/thread.cc: Likewise.
* include/debug/formatter.h: Likewise.
* include/debug/functions.h: Likewise.
* include/std/valarray: Likewise.
* include/std/thread: Likewise.
* include/std/type_traits: Likewise.
* include/std/atomic: Likewise.
* include/std/iterator: Likewise.
* include/std/bitset: Likewise.
* include/std/fstream: Likewise.
* include/std/mutex: Likewise.
* include/c_std/cstdlib: Likewise.
* include/c_std/cstdio: Likewise.
* include/c_std/ctime: Likewise.
* include/c_std/cwchar: Likewise.
* include/c_std/cstring: Likewise.
* include/parallel/multiway_merge.h: Likewise.
* include/parallel/multiseq_selection.h: Likewise.
* include/parallel/base.h: Likewise.
* include/parallel/basic_iterator.h: Likewise.
* include/parallel/multiway_mergesort.h
* include/parallel/partition.h: Likewise.
* include/ext/string_conversions.h: Likewise.
* include/ext/pb_ds/assoc_container.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp:
Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/
sample_resize_policy.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/
sample_resize_trigger.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_store_hash_fn_imps.hpp: Likewise.
* include/ext/pb_ds/d: Likewise.etail/cc_hash_table_map_/
insert_no_store_hash_fn_imps.hpp
* include/ext/pb_ds/detail/cc_hash_table_map_/
cmp_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
insert_store_hash_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
info_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
entry_list_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
cc_ht_map_.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
erase_no_store_hash_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
iterator.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
const_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/
const_point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
insert_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
const_child_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
r_erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
rotate_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
node_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
point_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
gp_ht_map_.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
standard_policies.hpp: Likewise.
* include/ext/pb_ds/detail/tree_policy/
sample_tree_node_update.hpp: Likewise.
* include/ext/pb_ds/detail/basic_tree_policy/
null_node_metadata.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
const_point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/trie_policy/
sample_trie_node_update.hpp: Likewise.
* include/ext/pb_ds/detail/trie_policy/
sample_trie_e_access_traits.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_metadata.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
null_metadata.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
const_point_iterator.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/
sample_ranged_probe_fn.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/
sample_ranged_hash_fn.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
trace_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
find_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
info_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
iterators_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rc_binomial_heap_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rc_binomial_heap_/
insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rc_binomial_heap_/
debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Likewise.
* include/ext/pb_ds/list_update_policy.hpp: Likewise.
* include/ext/pb_ds/exception.hpp: Likewise.
* include/ext/pb_ds/tree_policy.hpp: Likewise.
* include/ext/pb_ds/tag_and_trait.hpp: Likewise.
* include/ext/pb_ds/hash_policy.hpp: Likewise.
* include/ext/pb_ds/trie_policy.hpp: Likewise.
* include/ext/pb_ds/priority_queue.hpp: Likewise.
* include/ext/throw_allocator.h: Likewis: Likewise.e.
* include/ext/bitmap_allocator.h
* include/ext/rc_string_base.h: Likewise.
* include/ext/new_allocator.h: Likewise.
* include/ext/codecvt_specializations.h: Likewise.
* include/ext/functional: Likewise.: Likewise.
* include/ext/array_allocator.h: Likewise.
* include/ext/mt_allocator.h: Likewise.
* include/ext/sso_string_base.h: Likewise.
* include/profile/impl/profiler_trace.h: Likewise.
* include/profile/impl/profiler_node.h: Likewise.
* include/bits/stl_algobase.h: Likewise.
* include/bits/functional_hash.h: Likewise.
* include/bits/locale_facets.tcc: Likewise.
* include/bits/locale_facets.h: Likewise.
* include/bits/stl_iterator_base_types.h: Likewise.
* include/bits/move.h: Likewise.
* include/bits/boost_concept_check.h: Likewise.
* include/bits/basic_string.tcc: Likewise.
* include/bits/locale_facets_nonio.tcc: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/bits/locale_facets_nonio.h: Likewise.
* include/c_global/cstdlib: Likewise.
* include/c_global/cstdio: Likewise.
* include/c_global/ctime: Likewise.
* include/c_global/cwchar: Likewise.
* include/c_global/cstring
* include/tr1/type_traits: Likewise.
* include/backward/hash_fun.h: Likewise.
* libsupc++/new: Likewise.
* libsupc++/initializer_list: Likewise.
* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
* testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputc/char/1057.cc: Likewise.
* testsuite/27_io/objects/wchar_t/5268.cc: Likewise.
* testsuite/27_io/objects/char/9661-1.cc: Likewise.
* testsuite/27_io/objects/char/5268.cc: Likewise.
* testsuite/27_io/objects/char/10.cc: Likewise.
* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
* testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
* testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputc/char/1057.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_stringbuf/sputn/char/1057.cc: Likewise.
* testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/wchar_t/
exceptions_null.cc
* testsuite/27_io/basic_istream/extractors_other/wchar_t/
1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/char/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
* testsuite/27_io/basic_istream/cons/3.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/
wchar_t/01.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/
char/01.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
wchar_t/2.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
wchar_t/3.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/1.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/2.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/3.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_character/
char/9826.cc: Likewise.
* testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/
exceptions_null.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
* testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/
wchar_t/8.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/
char/8.cc: Likewise.
* testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputc/char/1057.cc: Likewise.
* testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
* testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputn/char/1057.cc: Likewise.
* testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
* testsuite/18_support/bad_exception/23591_thread-1.c
* testsuite/18_support/new_delete_placement.cc: Likewise.
* testsuite/18_support/pthread_guard.cc: Likewise.
* testsuite/21_strings/basic_string/operations/wchar_t/1.cc: Likewise.
* testsuite/21_strings/basic_string/operations/char/1.cc: Likewise.
* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
* testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
* testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/timed_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/mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/thread/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/
assign_neg.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/
copy_neg.cc: Likewise.
* testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
* testsuite/ext/slist/23781.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
* testsuite/22_locale/ctype/is/char/1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
* testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
* testsuite/22_locale/locale/cons/2.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
* testsuite/22_locale/locale/cons/29217.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
* testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/
requirements/iterator_null_neg.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/
requirements/iterator_null_neg.cc: Likewise.
* testsuite/29_atomics/atomic_address/cons/single_value.cc: Likewise.
* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Likewise.
* testsuite/23_containers/multimap/23781.cc: Likewise.
* testsuite/23_containers/set/23781.cc: Likewise.
* testsuite/23_containers/multiset/23781.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/list/23781.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/23_containers/map/23781.cc: Likewise.
* testsuite/util/regression/rand/priority_queue/
rand_regression_test.hpp: Likewise.
* testsuite/util/regression/rand/priority_queue/
container_rand_regression_test.tcc: Likewise.
* testsuite/util/regression/rand/assoc/
rand_regression_test.hpp: Likewise.
* testsuite/util/regression/rand/assoc/
container_rand_regression_test.tcc: Likewise.
* testsuite/util/testsuite_hooks.cc: Likewise.
* testsuite/util/testsuite_io.h: Likewise.
* testsuite/util/testsuite_iterators.h: Likewise.
* testsuite/util/replacement_memory_operators.h: Likewise.
* testsuite/util/testsuite_allocator.h: Likewise.
* testsuite/util/testsuite_performance.h: Likewise.
From-SVN: r160231
2010-06-03 19:15:56 +00:00
Jason Merrill
fb9c3174c9
revert: re PR libstdc++/42832 (Revisit std::function for aliasing issues and efficiency)
...
Revert:
PR libstdc++/42832
* include/std/functional (function<>::swap): Perform bytewise
swap of _M_functor.
* include/tr1/functional (function<>::swap): Likewise.
From-SVN: r159940
2010-05-27 14:39:46 -04:00
Paolo Carlini
882b3d5c2e
[multiple changes]
...
2010-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41792
* include/tr1_impl/array: Use std::__addressof.
* include/std/functional (reference_wrapper): Likewise.
* include/ext/throw_allocator.h: Likewise.
* include/ext/pool_allocator.h: Likewise.
* include/ext/bitmap_allocator.h: Likewise.
* include/ext/new_allocator.h: Likewise.
* include/ext/malloc_allocator.h: Likewise.
* include/ext/array_allocator.h: Likewise.
* include/ext/mt_allocator.h: Likewise.
* include/ext/extptr_allocator.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/hashtable_policy.h: Likewise.
* include/bits/forward_list.h: Likewise.
* include/bits/stl_uninitialized.h: Likewise.
* include/bits/list.tcc: Likewise.
* include/bits/stl_construct.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* testsuite/20_util/reference_wrapper/41792.cc: New.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/multimap/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/set/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/vector/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/deque/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/multiset/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/list/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/map/requirements/
explicit_instantiation/4.cc: Likewise.
* testsuite/23_containers/array/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/
dr438/assign_neg.cc: Adjust dg-error line numbers.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
2010-05-20 Peter Dimov <pdimov@pdimov.com>
Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/move.h (__addressof, addressof): Add.
* testsuite/util/testsuite_api.h (struct OverloadedAddress): Add.
* testsuite/20_util/addressof/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/addressof/1.cc: Likewise.
From-SVN: r159643
2010-05-20 22:35:49 +00:00
Paolo Carlini
1041dabaa2
functional (result_of): Move...
...
2010-05-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/functional (result_of): Move...
* include/std/type_traits: ... here.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line number.
From-SVN: r159478
2010-05-17 10:19:31 +00:00
Paolo Carlini
5e108459ec
stl_pair.h (piecewise_construct_t, [...]): Add.
...
2010-04-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_pair.h (piecewise_construct_t,
pair<>::pair(piecewise_construct_t, tuple, tuple)): Add.
(pair<>::__cons, pair<>::__do_cons): Declare.
(__decay_and_strip, __strip_reference_wrapper): Move...
* include/std/type_traits: ... here.
* include/std/functional (_Index_tuple, _Build_index_tuple): Move...
* include/std/tuple: ... here.
(pack_arguments): Add.
(pair<>::__cons, pair<>::__do_cons): Define.
* testsuite/20_util/tuple/creation_functions/pack_arguments.cc: New.
* testsuite/20_util/pair/piecewise.cc: Likewise.
* testsuite/20_util/tuple/cons/big_tuples.cc: Include <utility>.
* testsuite/20_util/tuple/cons/constructor.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r158928
2010-04-30 09:52:41 +00:00
Jonathan Wakely
fbcedacca6
re PR libstdc++/43397 (std::function can't forward rvalue reference for pointer to member function)
...
2010-03-17 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/43397
* include/std/functional (_Mem_fn): Use perfect forwarding.
* testsuite/20_util/function/43397.cc: New.
From-SVN: r157504
2010-03-17 00:22:56 +00:00
Paolo Carlini
055f6a476c
functional_hash.h (_Fnv_hash_base<>::hash): Change to template.
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (_Fnv_hash_base<>::hash): Change
to template.
* include/tr1/functional_hash.h (_Fnv_hash_base<>::hash): Likewise.
* include/bits/vector.tcc (hash): Adjust.
* include/bits/basic_string.h (hash): Likewise.
* include/std/bitset (hash): Likewise.
* src/hash-string-aux.cc (hash): Likewise.
From-SVN: r157185
2010-03-03 01:23:07 +00:00
Jonathan Wakely
ac4983563d
mutex (lock_guard::lock_guard): Do not lock mutex when adopt_lock_t constructor is used.
...
2010-03-02 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex (lock_guard::lock_guard): Do not lock mutex when
adopt_lock_t constructor is used.
* testsuite/30_threads/lock_guard/cons/1.cc: New.
From-SVN: r157180
2010-03-02 23:00:21 +00:00
Paolo Carlini
4cd533a7c7
stl_bvector.h (hash<vector<bool, _Alloc>>): Add.
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>): Add.
* include/debug/vector (hash<__debug::vector<bool, _Alloc>>):
Likewise.
* include/profile/vector (hash<__profile::vector<bool, _Alloc>>):
Likewise.
* testsuite/23_containers/vector/bool/hash/1.cc: New.
* include/std/bitset (hash<bitset<_Nb>>): Small tweaks.
(hash<bitset<0>>): Add.
* include/debug/bitset (hash<__debug::bitset<_Nb>>): Forward to
hash<bitset<_Nb>>.
* include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
* testsuite/23_containers/bitset/hash/1.cc: Improve.
From-SVN: r157176
2010-03-02 21:11:19 +00:00
Paolo Carlini
ec7058d64d
bitset (_Base_bitset<>::_M_getdata()): Add.
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/bitset (_Base_bitset<>::_M_getdata()): Add.
(hash<_GLIBCXX_STD_D::bitset<_Nb>>): Add, use the latter.
* include/debug/bitset (hash<std::__debug::bitset<_Nb>>): Add.
* include/profile/bitset (hash<std::__profile::bitset<_Nb>>): Likewise.
* testsuite/23_containers/bitset/hash/1.cc: New.
From-SVN: r157165
2010-03-02 14:08:52 +00:00
Paolo Carlini
604b384dd4
iomanip (get_money, put_money): Add in C++0x mode; tidy.
...
2010-03-01 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/iomanip (get_money, put_money): Add in C++0x mode; tidy.
* testsuite/27_io/manipulators/extended/get_money/char/1.cc: New.
* testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
* testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
Likewise.
From-SVN: r157153
2010-03-01 19:12:39 +00:00
Ed Smith-Rowland
018afad39f
limits (__numeric_limits_base::max_digits10, [...]): Add.
...
2010-02-25 Ed Smith-Rowland <3dw4rd@verizon.net>
* include/std/limits (__numeric_limits_base::max_digits10,
numeric_limits<>::max_digits10, numeric_limits<>::lowest): Add.
* src/limits.cc: Define max_digits10.
* config/abi/pre/gnu.ver: Adjust.
* testsuite/18_support/numeric_limits/dr559.cc: Test max_digits10
and lowest too.
* testsuite/18_support/numeric_limits/lowest.cc: New.
* testsuite/18_support/numeric_limits/max_digits10.cc: New.
From-SVN: r157067
2010-02-25 17:13:04 +00:00
Paolo Carlini
640f8e6548
functional_hash.h (__hash_combine): Remove.
...
2010-02-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (__hash_combine): Remove.
(_Fnv_hash_base<>::hash(const char*, size_t)): Add defaulted
hash parameter.
(_Fnv_hash::__hash_combine(const _Tp&, size_t)): Add.
* include/std/system_error (hash<system_error>): Adjust.
* src/compatibility-c++0x.cc (hash<system_error>): Likewise.
From-SVN: r157065
2010-02-25 13:32:52 +00:00
Paolo Carlini
5c8db18ac6
functional_hash.h (struct _Fnv_hash): Rename to _Fnv_hash_base.
...
2010-02-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (struct _Fnv_hash): Rename
to _Fnv_hash_base.
(struct _Fnv_hash): Add, derives from the latter.
(__hash_combine): Add.
(hash<float>::operator()(float), hash<double>::operator()(double)):
Adjust.
* include/bits/basic_string.h (hash<string>, hash<wstring>,
hash<u16string>, hash<u32string>): Adjust.
* src/hash-string-aux.cc: Adjust.
* src/compatibility-c++0x.cc (hash<error_code>): Use __hash_combine.
* include/std/system_error (hash<error_code>): Likewise.
* include/std/thread (struct hash<thread::id>): Add.
* include/tr1/functional_hash.h : Rename to _Fnv_hash_base.
(struct _Fnv_hash): Add, derives from the latter.
(hash<float>::operator()(float), hash<double>::operator()(double)):
Adjust.
* testsuite/30_threads/thread/id/hash.cc: New.
* testsuite/30_threads/thread/cons/assign_neg.cc: Adjust dg-error
line number.
* testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
From-SVN: r157005
2010-02-23 15:23:37 +00:00
Paolo Carlini
15d81a3c31
functional_hash.h (hash<string>, [...]): Move, per DR 1182 to...
...
2010-02-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (hash<string>, hash<wstring>,
hash<u16string>, hash<u32string>, hash<error_code>): Move, per
DR 1182 to...
* include/bits/basic_string.h: ... here.
* include/std/system_error: ... and here, respectively.
* src/hash-aux.cc (hash<long double>::operator()(long double)):
Move definition...
* src/hash_c++0x.cc: ... here, new file.
* src/hash_tr1.cc: ... and here, tweak includes.
* src/compatibility-c++0x.cc (hash, _Fnv_hash): Remove.
* src/Makefile.am: Adjust.
* src/Makefile.in: Regenerate.
* include/std/functional: Include <bits/functexcept.h>.
* include/std/unordered_set: Remove redundant include.
* include/std/unordered_map: Likewise.
* include/tr1/functional_hash.h: Remove spurious trailing semicolon.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove
dg-excess.
From-SVN: r156971
2010-02-22 18:07:07 +00:00
Paolo Carlini
681f05d4f0
complex (proj): Change return type per DR 1137.
...
2010-02-21 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/complex (proj): Change return type per DR 1137.
(conj): Copy from tr1_impl, likewise adjust return type.
* include/tr1_impl/complex (conj): Remove.
* include/tr1/complex (conj): Add both overloads.
* testsuite/26_numerics/complex/dr781.cc: Rename to...
* testsuite/26_numerics/complex/dr781_dr1137.cc: ... this, and extend.
* include/tr1_impl/complex (arg): Optimize.
From-SVN: r156940
2010-02-21 19:55:17 +00:00
Paolo Carlini
ce4674f2a6
limits: Implement resolution of DR 559 (CD1) in C++0x mode.
...
2010-02-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/limits: Implement resolution of DR 559 (CD1) in
C++0x mode.
* testsuite/18_support/numeric_limits/dr559.cc: New.
From-SVN: r156830
2010-02-17 12:18:54 +00:00
Benjamin Kosnik
32ade5590e
ios_locale.cc: Fixes for -pedantic.
...
2010-02-16 Benjamin Kosnik <bkoz@redhat.com>
* src/ios_locale.cc: Fixes for -pedantic.
* src/system_error.cc: Same.
* src/locale.cc: Same.
* src/list.cc: Same.
* src/locale_facets.cc: Same.
* src/locale_init.cc: Same.
* src/ios.cc: Same.
* config/locale/darwin/ctype_members.cc: Same.
* config/locale/gnu/collate_members.cc: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/gnu/monetary_members.cc: Same.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.cc: Same.
* config/locale/generic/collate_members.cc: Same.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/generic/c_locale.cc: Same.
* config/locale/generic/monetary_members.cc: Same.
* config/locale/generic/time_members.cc: Same.
* config/io/basic_file_stdio.cc: Same.
* libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
* libsupc++/pointer_type_info.cc: Same.
* libsupc++/eh_personality.cc: Same.
* include/std/system_error: Throw spacing.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/ios_base.h: Same.
* testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
* testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New
From-SVN: r156822
2010-02-17 05:43:24 +00:00
Jonathan Wakely
73c5c5bbb3
PR libstdc++/42819, DR 1315
...
2010-02-12 Jonathan Wakely <jwakely.gcc@gmail.com>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/42819, DR 1315
* include/std/future (async): Use std::result_of for the template
argument of the std::future return type; adjust everywhere.
* testsuite/30_threads/async/42819.cc: New.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
dg-error line number.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/future/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/future/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r156742
2010-02-12 22:31:15 +00:00
Jason Merrill
4094aee8bf
thread (~_Impl_base): Declare inline.
...
* include/std/thread (~_Impl_base): Declare inline.
* libsupc++/nested_exception.h (~nested_exception): Likewise.
From-SVN: r156707
2010-02-11 14:00:13 -05:00
Jason Merrill
f1c3cf3c93
PR c++/42983, core issue 906
...
PR c++/42983, core issue 906
* method.c (defaultable_fn_check): Check virtualness.
* include/std/thread (~_Impl_base): Move default out of line.
* libsupc++/nested_exception.h (~nested_exception): Likewise.
From-SVN: r156672
2010-02-10 16:48:35 -05:00
Paolo Carlini
ab65a4c7bd
hashtable.h: Fold in include/tr1_impl/hashtable.h contents.
...
2010-02-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1/hashtable.h: Fold in include/tr1_impl/hashtable.h
contents.
* include/tr1_impl/hashtable.h: Remove.
* include/tr1_impl/hashtable_policy.h: Move and rename...
* include/tr1/hashtable_policy.h: ... here.
* include/tr1_impl/unordered_map: Move and rename...
* include/tr1/unordered_map.h: ... here.
* include/tr1_impl/unordered_set: Move and rename...
* include/tr1/unordered_set.h: ... here.
* include/tr1_impl/unordered_map: Move and rename...
* include/tr1/unordered_map.h: ... here.
* include/tr1/unordered_map: Adjust.
* include/tr1/unordered_set: Likewise.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* include/std/c++0x_warning.h: Move...
* include/bits/c++0x_warning.h: ... here.
* include/debug/unordered_map: Adjust.
* include/debug/unordered_set: Likewise.
* include/std/tuple: Likewise.
* include/std/system_error: Likewise.
* include/std/forward_list: Likewise.
* include/std/thread: Likewise.
* include/std/type_traits: Likewise.
* include/std/future: Likewise.
* include/std/regex: Likewise.
* include/std/atomic: Likewise.
* include/std/ratio: Likewise.
* include/std/random: Likewise.
* include/std/unordered_map: Likewise.
* include/std/chrono: Likewise.: Likewise.
* include/std/condition_variable: Likewise.
* include/std/mutex: Likewise.
* include/std/unordered_set: Likewise.
* include/std/array: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/unordered_set: Likewise.
* include/c_global/cinttypes: Likewise.
* include/c_global/ctgmath: Likewise.
* include/c_global/cfenv: Likewise.
* include/c_global/cstdint: Likewise.
* include/c_global/cstdbool: Likewise.
* include/c_global/ccomplex: Likewise.
* include/bits/shared_ptr.h: Do not include <bits/c++0x_warning.h>
at all, the file is not meant to be included by the users.
* include/bits/functional_hash.h: Likewise.
* include/bits/unique_ptr.h: Likewise.
* include/bits/forward_list.h: Likewise.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-*
line numbers.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
From-SVN: r156667
2010-02-10 19:14:33 +00:00
Paolo Carlini
3b2524b126
hashtable.h: Fold in include/tr1_impl/hashtable.h for C++0x use.
...
2010-02-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/hashtable.h: Fold in include/tr1_impl/hashtable.h
for C++0x use.
* include/bits/hashtable_policy.h: New, copy and adjust for
C++0x use, include/tr1_impl/hashtable_policy.h; fix erase and
insert member functions per n3000.
* include/bits/unordered_map.h: Likewise for include/tr1_impl/
unordered_map.
* include/bits/unordered_set.h: Likewise for include/tr1_impl/
unordered_set.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* include/tr1/unordered_map: Adjust.
* include/tr1/unordered_set: Likewise.
* include/tr1_impl/unordered_map: Adjust, now used only by tr1.
* include/tr1_impl/hashtable: Likewise.
* include/tr1_impl/hashtable_policy.h: Likewise.
* include/tr1_impl/unordered_set: Likewise.
* include/std/unordered_map: Adjust and simplify includes.
* include/std/unordered_set: Likewise.
* include/debug/unordered_map: Adjuse erase and insert members.
* include/debug/unordered_set: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/unordered_set: Likewise.
* testsuite/util/exception/safety.h: Fix for the updated erase and
insert member functions of the unordered_containers.
* testsuite/23_containers/unordered_map/erase/1.cc: New.
* testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_map/insert/map_single.cc:
Likewise.
* testsuite/23_containers/unordered_map/insert/array_syntax.cc:
Likewise.
* testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise.
* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/
24061-multimap.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/
24061-multimap.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/
multimap_range.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/
multimap_single.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise.
* testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise.
* testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise.
* testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/
24061-multiset.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/
24061-multiset.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/
multiset_range.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/
multiset_single.cc: Likewise.
* testsuite/23_containers/set/operators/1_neg.cc: Tweak dg-errors
to avoid spurious fails in debug-mode.
* testsuite/23_containers/map/operators/1_neg.cc: Likewise.
From-SVN: r156661
2010-02-10 16:09:42 +00:00
Benjamin Kosnik
0eb95b0d69
streambuf: Adjust doxygen group markup.
...
2010-02-09 Benjamin Kosnik <bkoz@redhat.com>
* include/std/streambuf: Adjust doxygen group markup.
* include/std/functional: Same.
* include/ext/vstring.h: Same.
* include/ext/pb_ds/assoc_container.hpp: Same.
* include/ext/stdio_filebuf.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/bits/localefwd.h: Same.
* include/bits/functional_hash.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/locale_facets_nonio.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
From-SVN: r156644
2010-02-10 05:45:24 +00:00
Benjamin Kosnik
6cc5a79001
[multiple changes]
...
2010-02-08 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/42460
* include/tr1_impl/regex: Fix quoting issues in doxygen markup.
* include/bits/random.h: Fix multi-line doxygen function markup.
2010-02-08 Matthias Klose <doko@debian.org>
PR libstdc++/42460
* include/std/istream: Fix '\' quoting in doxygen markup.
From-SVN: r156617
2010-02-09 04:49:49 +00:00
Ed Smith-Rowland
83c290e2d4
random.tcc (uniform_int_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Use make_unsigned instead of __add_unsigned and conditional instead of...
...
2010-02-08 Ed Smith-Rowland <3dw4rd@verizon.net>
* include/bits/random.tcc (uniform_int_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&)):
Use make_unsigned instead of __add_unsigned and conditional
instead of __conditional_type.
* include/std/random: Do not include <ext/type_traits.h> and
<ext/numeric_traits.h>.
From-SVN: r156608
2010-02-08 17:42:12 +00:00
Paolo Carlini
4e4d27aae5
future (swap(packaged_task<>&, packaged_task<>&)): Fix typo in last commit.
...
2010-02-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/future (swap(packaged_task<>&, packaged_task<>&)): Fix
typo in last commit.
From-SVN: r156525
2010-02-05 17:25:12 +00:00
Paolo Carlini
1950140626
future (swap(packaged_task<>&, packaged_task<>&), [...]): Add; minor formatting fixes.
...
2010-02-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/future (swap(packaged_task<>&, packaged_task<>&),
swap(promise<>&, promise<>&)): Add; minor formatting fixes.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
dg-error line number.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/promise/cons/copy_neg.cc: Likewise.
From-SVN: r156522
2010-02-05 17:19:10 +00:00
Benjamin Kosnik
2a60a9f652
re PR libstdc++/42460 (man page errors for generated libstdc++ man pages)
...
2010-02-04 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/42460
* doc/doxygen/user.cfg.in: Update file list.
* include/debug/safe_sequence.h: Doxygen markup fixes for '' and "".
* include/debug/safe_base.h: Same.
* include/debug/macros.h: Same.
* include/tr1_impl/regex: Same.
* include/std/iostream: Same.
* include/std/streambuf: Same.
* include/std/bitset: Same.
* include/std/iosfwd: Same.
* include/std/limits: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/parallel/multiway_merge.h: Same.
* include/parallel/for_each.h: Same.
* include/parallel/workstealing.h: Same.
* include/parallel/omp_loop_static.h: Same.
* include/parallel/omp_loop.h: Same.
* include/c_std/csignal: Same.
* include/c_std/cstdlib: Same.
* include/c_std/cstdio: Same.
* include/c_std/cstdarg: Same.
* include/c_std/cctype: Same.
* include/c_std/cerrno: Same.
* include/c_std/cmath: Same.
* include/c_std/ciso646: Same.
* include/c_std/ctime: Same.
* include/c_std/clocale: Same.
* include/c_std/climits: Same.
* include/c_std/cassert: Same.
* include/c_std/csetjmp: Same.
* include/c_std/cwchar: Same.
* include/c_std/cfloat: Same.
* include/c_std/cstring: Same.
* include/c_std/cstddef: Same.
* include/c_std/cwctype: Same.
* include/profile/iterator_tracker.h: Same.
* include/profile/impl/profiler_trace.h: Same.
* include/ext/vstring.h: Same.
* include/ext/algorithm: Same.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_.h.pp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.h.pp: Same.
* include/ext/pb_ds/detail/type_utils.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same
* include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/ext/functional: Same.
* include/ext/mt_allocator.h: Same.
* include/bits/basic_ios.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_iterator_base_funcs.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/random.tcc: Same.
* include/bits/stl_function.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/random.h: Same.
* include/bits/allocator.h: Same.
* include/bits/locale_facets_nonio.h: Same.
* include/c_global/csignal: Same.
* include/c_global/cstdlib: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cmath: Same.
* include/c_global/ciso646: Same.
* include/c_global/ctime: Same.
* include/c_global/clocale: Same.
* include/c_global/climits: Same.
* include/c_global/cassert: Same.
* include/c_global/csetjmp: Same.
* include/c_global/cwchar: Same.
* include/c_global/cfloat: Same.
* include/c_global/cstring: Same.
* include/c_global/cstddef: Same.
* include/c_global/cwctype: Same.
* include/tr1/hypergeometric.tcc: Same.
* include/tr1/random.tcc: Same.
* include/tr1/functional: Same.
* include/tr1/random.h: Same.
* include/backward/auto_ptr.h: Same.
* include/backward/binders.h: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust line numbers.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
Same.
* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
Same.
From-SVN: r156502
2010-02-04 18:20:34 +00:00
Jonathan Wakely
b7200e3fbe
condition_variable (condition_variable_any): Provide definitions for all members.
...
2010-02-03 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/condition_variable (condition_variable_any): Provide
definitions for all members.
* src/condition_variable.cc (condition_variable_any): Adjust
definitions.
* config/abi/pre/gnu.ver: Adjust exports for condition_variable_any.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
Adjust dg-error line number.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/members/1.cc: New.
* testsuite/30_threads/condition_variable_any/members/2.cc: New.
* testsuite/30_threads/condition_variable_any/requirements/
standard_layout.cc: Remove.
* testsuite/30_threads/condition_variable_any/native_handle/
typesizes.cc: Remove.
From-SVN: r156479
2010-02-03 20:16:22 +00:00
Paolo Carlini
6e4a660f12
revert: condition_variable (condition_variable_any:: wait<>(_Lock&)): Provide definition.
...
2010-01-31 Paolo Carlini <paolo.carlini@oracle.com>
Revert last changes. Also revert, among the previous changes:
* include/std/condition_variable (condition_variable_any::
wait<>(_Lock&)): Provide definition.
From-SVN: r156403
2010-01-31 16:54:49 +00:00
Paolo Carlini
023cee968b
condition_variable (condition_variable_any:: __wait_until_impl): Add.
...
2010-01-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/condition_variable (condition_variable_any::
__wait_until_impl): Add.
(condition_variable_any::wait_until): Provide definitions.
* testsuite/30_threads/condition_variable_any/members/2.cc: New.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
Adjust dg-error line number.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
Likewise.
* testsuite/30_threads/condition_variable/members/1.cc: Minor
stylistic changes.
* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
From-SVN: r156367
2010-01-29 22:46:31 +00:00
Paolo Carlini
cdf5f5a34d
condition_variable (enum class cv_status): Add and use it throughout, per N3000.
...
2010-01-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/condition_variable (enum class cv_status): Add and
use it throughout, per N3000.
(condition_variable_any::wait<>(_Lock&), wait<>(_Lock&, _Predicate),
wait_until<>(_Lock&, const chrono::time_point<>&, _Predicate)):
Provide definitions.
* src/condition_variable.cc (condition_variable_any::notify_one,
condition_variable_any::notify_all): Likewise.
* config/abi/pre/gnu.ver: Export.
* testsuite/30_threads/condition_variable_any/requirements/
typedefs.cc: New.
* testsuite/30_threads/condition_variable_any/requirements/
standard_layout.cc: Likewise.
* testsuite/30_threads/condition_variable/members/1.cc: Adjust.
* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Adjust
dg-error line numbers.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
Likewise.
From-SVN: r156358
2010-01-29 16:59:55 +00:00
Richard Guenther
77597d3907
re PR libstdc++/42832 (Revisit std::function for aliasing issues and efficiency)
...
2010-01-27 Richard Guenther <rguenther@suse.de>
PR libstdc++/42832
* include/std/functional (function<>::swap): Perform bytewise
swap of _M_functor.
* include/tr1/functional (function<>::swap): Likewise.
From-SVN: r156290
2010-01-27 15:49:00 +00:00
Daniel Frey
2b054f631a
functional: Use enable_if instead of __enable_if throughout, do not include ext/type_traits.h.
...
2010-01-26 Daniel Frey <d.frey@gmx.de>
* include/std/functional: Use enable_if instead of __enable_if
throughout, do not include ext/type_traits.h.
(is_placeholder, is_bind_expression): Use integral_constant.
From-SVN: r156246
2010-01-26 13:33:06 +00:00
Daniel Frey
0d9709e1bf
functional (_Index_tuple, [...]): Simplify and speed-up.
...
2010-01-22 Daniel Frey <d.frey@gmx.de>
* include/std/functional (_Index_tuple, _Build_index_tuple):
Simplify and speed-up.
From-SVN: r156178
2010-01-22 20:50:15 +00:00
Jonathan Wakely
b3eed6fe78
re PR libstdc++/42201 ([C++0x] std::vector<std::unique_future<T>>::push_back fails)
...
2010-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/42201
* include/std/future: Update to latest WP.
* src/functexcept.cc (__throw_future_error): Use make_error_code.
* testsuite/30_threads/async/any.cc: New.
* testsuite/30_threads/async/async.cc: New.
* testsuite/30_threads/async/sync.cc: New.
* testsuite/30_threads/packaged_task/cons/alloc.cc: New.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
* testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
* testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
* testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
* testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
* testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
* testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
* testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
* testsuite/30_threads/shared_future/cons/default.cc: New.
* testsuite/30_threads/shared_future/cons/assign.cc: New.
* testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
* testsuite/30_threads/shared_future/cons/move.cc: Adjust.
* testsuite/30_threads/shared_future/cons/move_assign.cc: New.
* testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
* testsuite/30_threads/shared_future/members/has_value.cc: Remove.
* testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
* testsuite/30_threads/shared_future/members/valid.cc: New.
* testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
* testsuite/30_threads/unique_future/cons/default.cc: New.
* testsuite/30_threads/unique_future/cons/move_assign.cc: New.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
* testsuite/30_threads/unique_future/cons/move.cc: Adjust.
* testsuite/30_threads/unique_future/requirements/
explicit_instantiation.cc: Adjust.
* testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
* testsuite/30_threads/unique_future/members/has_value.cc: Remove.
* testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
* testsuite/30_threads/unique_future/members/valid.cc: New.
* testsuite/30_threads/unique_future/members/get.cc: Adjust.
* testsuite/30_threads/unique_future/members/get2.cc: Adjust.
* testsuite/30_threads/unique_future/members/wait.cc: Adjust.
* testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
* testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
* testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
* testsuite/30_threads/promise/cons/alloc.cc: New.
* testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
* testsuite/30_threads/promise/cons/move.cc: Adjust.
* testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
* testsuite/30_threads/promise/members/get_future.cc: Adjust.
* testsuite/30_threads/promise/members/set_value.cc: Adjust.
* testsuite/30_threads/promise/members/set_exception.cc: Adjust.
* testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
* testsuite/30_threads/promise/members/set_value2.cc: Adjust.
* testsuite/30_threads/promise/members/set_value3.cc: Adjust.
* testsuite/30_threads/promise/members/swap.cc: Adjust.
From-SVN: r156097
2010-01-21 00:01:47 +00:00
Daniel Frey
0238e6c9f2
functional (_Bind<_Functor(_Bound_args...)>:: operator()): "Pass" _Result to __call*.
...
2010-01-18 Daniel Frey <d.frey@gmx.de>
* include/std/functional (_Bind<_Functor(_Bound_args...)>::
operator()): "Pass" _Result to __call*.
(_Bind<_Functor(_Bound_args...)>::__call*): Adjust, simplify.
From-SVN: r156007
2010-01-18 10:41:30 +00:00
Paolo Carlini
8232dc6427
functional (_Bind<_Functor(_Bound_args...)>::__call): Rename const version to __call_c and remove _Sfinae template parameter.
...
2010-01-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/functional (_Bind<_Functor(_Bound_args...)>::__call):
Rename const version to __call_c and remove _Sfinae template
parameter.
(_Bind<_Functor(_Bound_args...)>::operator()): Adjust.
* include/std/functional: Pass everywhere temporary tuple<_Args...>
arguments by rvalue reference.
* testsuite/20_util/bind/cv_quals.cc: New.
* testsuite/20_util/bind/ref2.cc: Add missing test variables.
From-SVN: r155978
2010-01-17 13:29:41 +00:00
Jonathan Wakely
d90d97ff9c
re PR libstdc++/24803 ([c++0x] reference_wrapper and pointers to member functions)
...
2010-01-12 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/24803
PR libstdc++/35569
PR libstdc++/42593
* include/std/functional (bind): Forward rvalues and detect correct
result type of bound function object.
* include/std/mutex (call_once): Specify bind result type.
* testsuite/20_util/reference_wrapper/invoke.cc: Remove invalid tests.
* testsuite/20_util/reference_wrapper/24803.cc: Remove invalid tests
and enable FIXME tests.
* testsuite/20_util/bind/35569.cc: New.
* testsuite/20_util/bind/ref2.cc: New.
* testsuite/20_util/bind/38889.cc: New.
* testsuite/20_util/bind/ref_neg.cc: New.
* testsuite/20_util/bind/42593.cc: New.
From-SVN: r155826
2010-01-12 00:53:30 +00:00
Paolo Carlini
0d6f2a8037
bitset (bitset<>::bitset(unsigned long long), [...]): Add in C++0x mode.
...
2009-12-31 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/bitset (bitset<>::bitset(unsigned long long),
_Base_bitset<>::_Base_bitset(unsigned long long)): Add
in C++0x mode.
* testsuite/23_containers/bitset/cons/3.cc: New.
From-SVN: r155539
2009-12-31 17:31:28 +00:00
Paolo Carlini
4b3d7a7e92
type_traits: Fix minor stylistic nit.
...
2009-12-31 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits: Fix minor stylistic nit.
From-SVN: r155537
2009-12-31 14:38:01 +00:00
Paolo Carlini
b0302c68d8
type_traits (__is_constructible_helper1): Rename to __is_constructible_helper1...
...
2009-12-31 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (__is_constructible_helper1): Rename
to __is_constructible_helper1, tweaked to a specialization of
__is_constructible_helper.
(is_constructible): Adjust; minor formatting and stylistic
changes throughout.
* testsuite/util/testsuite_tr1.h (test_relationship): Change
variadic version to an overload of test_property.
* testsuite/20_util/is_constructible/value.cc: Adjust.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r155536
2009-12-31 14:04:23 +00:00
Paolo Carlini
56a01d53bb
type_traits: Fix minor formatting nit.
...
2009-12-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits: Fix minor formatting nit.
From-SVN: r155530
2009-12-30 23:37:28 +00:00
Paolo Carlini
75995f3782
[multiple changes]
...
2009-12-30 Daniel Frey <d.frey@gmx.de>
Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (is_explicitly_convertible,
is_constructible): Add.
* testsuite/util/testsuite_tr1.h (ExplicitClass): Add.
* testsuite/20_util/is_explicitly_convertible/value.cc: New.
* testsuite/20_util/is_constructible/value.cc: Likewise.
2009-12-30 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/util/testsuite_tr1.h (test_relationship): Add
variadic version.
* testsuite/20_util/is_explicitly_convertible/requirements/
typedefs.cc: New.
* testsuite/20_util/is_explicitly_convertible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_constructible/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_constructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_convertible/value.cc: Extend.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r155529
2009-12-30 23:22:58 +00:00
Paolo Carlini
700d289947
bitset (bitset<>::to_ullong, [...]): Add.
...
2009-12-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/bitset (bitset<>::to_ullong, _M_do_to_ullong): Add.
(_Base_bitset<>::_M_do_to_ullong): Add.
* include/debug/bitset (bitset<>): Add using _Base::to_ullong.
* include/profile/bitset (bitset<>): Likewise.
* testsuite/23_containers/bitset/to_ullong/1.cc: New.
From-SVN: r155504
2009-12-29 12:24:36 +00:00
Paolo Carlini
a1b418cb9f
[multiple changes]
...
2009-12-24 Edward Smith-Rowland <3dw4rd@verizon.net>
Paolo Carlini <paolo.carlini@oracle.com>
* include/std/bitset (bitset<>::bitset(const char*)): Add.
2009-12-24 Jonathan Wakely <jwakely.gcc@gmail.com>
Edward Smith-Rowland <3dw4rd@verizon.net>
* testsuite/23_containers/bitset/cons/2.cc: New.
From-SVN: r155458
2009-12-24 18:12:02 +00:00
Jonathan Wakely
c5a2375241
functional (bind): Avoid invalid instantiations for bind<void>.
...
2009-12-24 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/functional (bind): Avoid invalid instantiations
for bind<void>.
* testsuite/20_util/bind/conv_result.cc: New.
From-SVN: r155457
2009-12-24 14:54:33 +00:00
Jonathan Wakely
6be8006d35
mutex (call_once(once_flag&, _Callable, _Args&&...)): Explicitly qualify with std:: bind calls.
...
2009-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex (call_once(once_flag&, _Callable, _Args&&...)):
Explicitly qualify with std:: bind calls.
From-SVN: r155397
2009-12-22 12:45:12 +00:00
Benjamin Kosnik
afd88205d8
atomic: Update to N3000.
...
2009-12-20 Benjamin Kosnik <bkoz@redhat.com>
* include/std/atomic: Update to N3000.
* include/bits/atomic_0.h: Same.
* include/bits/atomic_2.h: Same.
* include/c_global/cstdatomic: Move...
* include/bits/atomic_base.h: ...here.
* include/c_compatibility/stdatomic.h: Just include atomic_base.h.
* include/precompiled/stdc++.h: Adjust includes.
* include/Makefile.am: Adjust files.
* include/Makefile.in: Regenerate.
* include/std/future: Adjust.
* src/atomic.cc: Adjust, adjust exports for compatibility.
* src/compatibility.cc: Move C++0x stuff...
* src/compatibility-c++0x.cc: ...here.
* doc/xml/manual/using.xml: Update.
* doc/xml/manual/status_cxx200x.xml: Update.
* doc/doxygen/user.cfg.in: Update.
* testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/single_value.cc: Same.
* testsuite/29_atomics/atomic_address/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/default.cc: Same.
* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_address/requirements/
standard_layout.cc: Same.
* testsuite/29_atomics/atomic_address/requirements/trivial.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/single_value.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/default.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/direct_list.cc: Same.
* testsuite/29_atomics/atomic_integral/requirements/
standard_layout.cc: Same.
* testsuite/29_atomics/atomic_integral/requirements/trivial.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/
integral_assignment.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/increment.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/bitwise.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/decrement.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/
integral_conversion.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/default.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_flag/requirements/
standard_layout.cc: Same.
* testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Same.
* testsuite/29_atomics/atomic_flag/clear/1.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.c
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.c
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Same.
* testsuite/29_atomics/headers/stdatomic.h/functions.c
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/single_value.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/default.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_list.cc: Same.
* testsuite/29_atomics/atomic/cons/direct_list.cc: Same.
* testsuite/29_atomics/atomic/requirements/explicit_instantiation/
1.cc: Same.
* testsuite/29_atomics/atomic/requirements/base_classes.cc: Same.
* testsuite/29_atomics/atomic/operators/integral_assignment.cc: Same.
* testsuite/29_atomics/atomic/operators/integral_conversion.cc: Same.
* testsuite/util/testsuite_common_types.h: Adjust.
* testsuite/29_atomics/headers/cstdatomic: Move and adjust...
* testsuite/29_atomics/headers/atomic: ...here.
* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/atomic/functions_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Same.
* testsuite/29_atomics/headers/atomic/macros.cc: Same.
* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Add.
* testsuite/29_atomics/atomic/cons/user_pod.cc: Add.
From-SVN: r155377
2009-12-21 19:00:34 +00:00
Paolo Carlini
a957d12f7a
condition_variable: Revert inadvertent changes.
...
2009-12-18 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/condition_variable: Revert inadvertent changes.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Ditto.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Ditto.
* testsuite/30_threads/condition_variable/members/1.cc: Ditto.
* testsuite/30_threads/condition_variable/members/2.cc: Ditto.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Ditto.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Ditto.
From-SVN: r155343
2009-12-18 09:44:54 +00:00
Jimmy Guo
4ef8972563
re PR libstdc++/40088 (Creating a std::ostringstream object locks a global mutex)
...
2009-12-18 Jimmy Guo <jguo@yahoo-inc.com>
PR libstdc++/40088
* src/locale_init.cc (locale::locale()): Optimize the common case
where _S_global still points to _S_classic.
From-SVN: r155342
2009-12-18 09:41:03 +00:00
Jonathan Wakely
abcd7e0847
future (unique_future::get, [...]): Remove workaround for c++/34022.
...
2009-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/future (unique_future::get, promise::set_value): Remove
workaround for c++/34022.
(packaged_task::get_future, packaged_task::operator()): Use
__throw_bad_function_call.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/promise/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Likewise.
From-SVN: r155269
2009-12-15 20:17:27 +00:00
Jonathan Wakely
ec903a9c42
functional (function::function): Move construct target.
...
2009-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/functional (function::function): Move construct target.
(function::operator=): Use perfect forwarding for argument.
(function::operator()): Use new __throw_bad_function_call.
* include/bits/functexcept.h (__throw_bad_function_call): Declare.
* src/functexcept.cc (__throw_bad_function_call): Define.
* config/abi/pre/gnu.ver: Add new symbol.
* testsuite/20_util/function/cons/move_target.cc: New.
* testsuite/20_util/function/assign/move_target.cc: New.
From-SVN: r155261
2009-12-15 17:42:47 +00:00
Paolo Carlini
8246b3148e
PR libstdc++/22634, DR 539 [Ready]
...
2009-12-11 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/22634, DR 539 [Ready]
* include/bits/stl_numeric.h (adjacent_difference): Use std::move
at the end of the loop body, per the Ready resolution.
* include/std/numeric: Do not include unnecessarily <cstddef>.
* doc/xml/manual/intro.xml: Add an entry for DR 539.
From-SVN: r155173
2009-12-11 17:54:37 +00:00
Paolo Carlini
7aec2c6343
[multiple changes]
...
2009-11-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/functional: Remove file, copy its contents,
trivially adjusted...
* include/std/functional: ... here, and...
* include/tr1_impl/functional: ... here.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
2009-11-30 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/tr1_impl/functional (function): Add rvalue support and
tweak doxygen markup.
* testsuite/20_util/function/assign/move.cc: New.
* testsuite/20_util/function/cons/move.cc: New.
* testsuite/20_util/function/invoke/move_only.cc: New.
* testsuite/20_util/function/cmp/cmp_neg.cc: New.
* testsuite/20_util/function/1.cc: Copy from testsuite/tr1/.
* testsuite/20_util/function/2.cc: Likewise.
* testsuite/20_util/function/3.cc: Likewise.
* testsuite/20_util/function/4.cc: Likewise.
* testsuite/20_util/function/5.cc: Likewise.
* testsuite/20_util/function/6.cc: Likewise.
* testsuite/20_util/function/7.cc: Likewise.
* testsuite/20_util/function/8.cc: Likewise.
* testsuite/20_util/function/9.cc: Likewise.
From-SVN: r154759
2009-11-30 09:34:04 +00:00
Paolo Carlini
4a85780b75
re PR libstdc++/41622 ([DR 1245] [c++0x] std::hash<std::string>::operator() copies its argument)
...
2009-11-19 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41622
* include/bits/functional_hash.h: Implement inline the various
std::hash specializations, using, when appropriate, pass by
const ref too, per DR 1245.
* include/tr1_impl/functional_hash.h: Remove, move its contents...
* include/tr1/functional_hash.h: ... here.
* include/std/functional: Tweak includes.
* src/hash_c++0x: Rename to...
* src/compatibility-c++0x.cc: ... this, implementing compatibility
std::hash<>::operator() specializations.
* src/hash.cc: Do not mark specializations as throw().
* src/Makefile.am: Adjust.
* include/Makefile.am: Likewise.
* src/Makefile.in: Regenerate.
* include/Makefile.in: Likewise.
* testsuite/util/testsuite_api.h: Define a dummy hash for
NonDefaultConstructible.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/2.cc: Use it.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/2.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/2.cc: Likewise.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/2.cc: Likewise.
From-SVN: r154335
2009-11-19 16:55:25 +00:00
Paolo Carlini
8ad7097c11
algorithm: Include <utility>, per UK-300.
...
2009-11-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/algorithm: Include <utility>, per UK-300.
* include/bits/stl_algobase.h: Don't do it here.
From-SVN: r154152
2009-11-13 15:06:28 +00:00
Paolo Carlini
7274deff73
type_traits (declval): Add, per DR 1255.
...
2009-11-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (declval): Add, per DR 1255.
(__is_convertible_helper, common_type): Use it.
* include/bits/move.h: Mention std::declval.
* testsuite/20_util/declval/requirements/1.cc: New.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/common_type/requirements/
explicit_instantiation.cc: Extend.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r154140
2009-11-13 02:25:12 +00:00
Benjamin Kosnik
8e32aa11c7
user.cfg.in: Adjust includes.
...
2009-11-06 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Adjust includes.
* doc/doxygen/doxygroups.cc: Move group markup.
* include/tr1_impl/regex: Change " to '. Add group markup.
* include/std/utility: Same.
* include/std/type_traits: Same.
* include/std/streambuf: Same.
* include/std/iosfwd: Same.
* include/std/limits: Same.
* include/std/sstream: Same.
* include/profile/impl/profiler_state.h: Same.
* include/profile/impl/profiler_hashtable_size.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/streambuf_iterator.h: Same.
* libsupc++/exception: Same.
* libsupc++/cxxabi.h: Same.
* include/tr1_impl/type_traits: Same.
* include/parallel/multiway_merge.h: Change @__c to @c, @__f to @f.
* include/parallel/list_partition.h: Same.
* include/parallel/for_each.h: Same.
* include/parallel/workstealing.h: Same.
* include/parallel/base.h: Same.
* include/parallel/equally_split.h: Same.
* include/parallel/random_shuffle.h: Same.
* include/parallel/balanced_quicksort.h: Same.
* include/parallel/merge.h: Same.
* include/parallel/multiway_mergesort.h: Same.
* include/parallel/compatibility.h: Same.
* include/parallel/queue.h: Same.
* include/parallel/checkers.h: Same.
* include/parallel/random_number.h: Same.
* include/c_global/csignal: Change # to \#.
* include/c_global/cstdlib: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cstdatomic: Same.
* include/c_global/cmath: Same.
* include/c_global/ciso646: Same.
* include/c_global/ctime: Same.
* include/c_global/clocale: Same.
* include/c_global/climits: Same.
* include/c_global/cassert: Same.
* include/c_global/csetjmp: Same.
* include/c_global/cwchar: Same.
* include/c_global/cfloat: Same.
* include/c_global/cstring: Same.
* include/c_global/cstddef: Same.
* include/c_global/cwctype: Same.
* include/std/memory: Only dance around boost_sp_counted_base.h.
* include/tr1_impl/boost_sp_counted_base.h: Add markup.
* include/tr1/shared_ptr.h: Strip markup.
* include/bits/shared_ptr.h: Move base types...
* include/bits/shared_ptr_base.h: ...here.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* configure: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
From-SVN: r153980
2009-11-06 22:15:17 +00:00
Jonathan Wakely
21a15d9f83
re PR libstdc++/41949 (std::endl documentation contains bad link)
...
2009-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/41949
* include/std/ostream: Adjust link.
From-SVN: r153961
2009-11-06 08:38:02 +00:00
Benjamin Kosnik
c36abf0326
future: Use base class with nested types.
...
2009-11-02 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Use base class with nested types.
(__future_base): New.
(__future_base::_Result_base): From _Future_result_base.
(__future_base::_Result): From _Future_result.
(__future_base::_Move_result): From _Move_future_result.
(__future_base::_Ptr): From _Future_ptr.
(__future_base::_State): From _Future_state.
(__basic_future): From _Future_impl.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust line
numbers.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Same.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
From-SVN: r153834
2009-11-03 00:47:48 +00:00
Paolo Carlini
cc1e250414
chrono (struct __common_rep_type): New.
...
2009-10-31 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/chrono (struct __common_rep_type): New.
(duration_cast(const duration<>&),
duration<>::duration(const _Rep2&),
duration<>::duration(const duration<>&),
operator*(const duration<>&, const _Rep2&),
operator*(const _Rep1&, const duration<>&),
operator/(const duration<>&, const _Rep2&),
time_point_cast(const time_point<>&)): Implement resolution of
DR 1177 ([Ready] in Santa Cruz), change to not participate to
overload resolution if the constraints are not met.
* testsuite/20_util/duration/cons/1_neg.cc: Adjust dg-errors.
* testsuite/20_util/duration/cons/dr974.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
dg-error line numbers.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
From-SVN: r153787
2009-11-01 00:35:40 +00:00
Paolo Carlini
297f34d719
type_traits (__is_convertible_simple): Remove.
...
2009-10-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (__is_convertible_simple): Remove.
(__is_convertible_helper): Adjust.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r153743
2009-10-30 13:12:08 +00:00
Paolo Carlini
2d0269f683
type_traits (__is_int_or_cref): Remove.
...
2009-10-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (__is_int_or_cref): Remove.
(__is_convertible_helper): Fix per C++0x and simplify (the hack to
suppress warnings isn't necessary anymore).
* testsuite/20_util/is_convertible/requirements/typedefs.cc: New.
* testsuite/20_util/is_convertible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_convertible/value.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r153728
2009-10-29 23:23:29 +00:00
Paolo Carlini
9c67ec2204
chrono (duration<>::duration(const duration<>&)): Fix per the straightforward resolution of DR 974.
...
2009-10-26 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/chrono (duration<>::duration(const duration<>&)): Fix
per the straightforward resolution of DR 974.
* testsuite/20_util/duration/cons/dr974.cc: Add.
From-SVN: r153581
2009-10-27 01:18:10 +00:00
Jason Merrill
20f2653ef0
PR c++/38796, Core issue 906
...
PR c++/38796, Core issue 906
gcc/cp
* cp-tree.h (DECL_DEFAULTED_OUTSIDE_CLASS_P): New.
(DECL_DEFAULTED_IN_CLASS_P): New.
* class.c (user_provided_p): Non-static.
(check_methods): Use it.
(check_bases_and_members): Check defaulted fns.
(defaultable_fn_p): Move and rename to...
* method.c (defaultable_fn_check): ...this.
(defaulted_late_check): New.
* pt.c (tsubst_decl): Call it.
* decl2.c (grokfield): Adjust.
* decl.c (cp_finish_decl): Adjust.
(grok_special_member_properties): Use user_provided_p.
libstdc++-v3
* include/std/future (~Future_result_base): Default outside class
body.
* include/std/system_error (error_category()): Likewise.
* libsupc++/nested_exception.h (nested_exception): Remove
exception specifications from defaulted methods.
From-SVN: r153565
2009-10-26 15:07:14 -04:00
Benjamin Kosnik
3808dfec58
re PR libstdc++/40654 ([C++0x] atomic.cc: 'd' is used uninitialized warning)
...
2009-10-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/40654
PR libstdc++/40826
* src/atomic.cc (atomic_flag_test_and_set_explicit): Add
static_cast from base to derived.
(atomic_flag_clear_explicit): Same.
* include/bits/atomic_2.h (__atomic2::atomic_flag): Public derivation.
Remove value type constructor.
* include/bits/atomic_0.h (__atomic0::atomic_flag): Same.
* include/std/future (_Future_state): Use ATOMIC_FLAG_INIT to
initialized the atomic_flag member.
From-SVN: r152895
2009-10-16 07:47:33 +00:00
Paolo Carlini
77e3c51603
random.h (class linear_congruential_engine, [...]): Do not use simulated concept checks...
...
2009-10-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (class linear_congruential_engine,
class mersenne_twister_engine, class subtract_with_carry_engine,
class discard_block_engine, class independent_bits_engine,
class shuffle_order_engine, class uniform_int_distribution,
class binomial_distribution, class geometric_distribution,
class negative_binomial_distribution, class poisson_distribution,
class discrete_distribution): Do not use simulated concept checks,
tidy startic_asserts on argument types and ranges.
(class uniform_real_distribution, class normal_distribution,
class lognormal_distribution, class gamma_distribution,
class chi_squared_distribution, class cauchy_distribution,
class fisher_f_distribution, class student_t_distribution,
class exponential_distribution, class weibull_distribution,
class extreme_value_distribution, class piecewise_linear_distribution,
class piecewise_constant_distribution): Add static_assert on
template argument type.
* include/std/random: Do not include <bits/concept_check.h>.
* testsuite/26_numerics/random/discard_block_engine/cons/base_move.cc:
Fix.
* testsuite/26_numerics/random/discard_block_engine/cons/seed1.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/seed2.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/base_copy.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/seed_seq.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/requirements/
typedefs.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
requirements/non_uint_neg.cc: Tweak.
From-SVN: r152682
2009-10-12 19:11:31 +00:00
John Bytheway
cadd2a9cb3
re PR libstdc++/41530 ([c++0x] Cannot move-construct std::tuple from a different type of std::tuple)
...
2009-10-05 John Bytheway <jbytheway@gmail.com>
PR libstdc++/41530
* include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)):
Fix to just move.
* testsuite/20_util/tuple/cons/41530.cc: New.
From-SVN: r152461
2009-10-05 17:56:02 +00:00
Silvius Rus
1218d701f7
merge branch profile-stdlib
...
From-SVN: r152431
2009-10-03 02:17:41 +00:00
Benjamin Kosnik
41ca42469f
future: Move error handling bits outside macro guard.
...
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Move error handling bits outside macro guard.
* src/future.cc: Adjust.
* include/precompiled/stdc++.h: Add future.
* doc/xml/manual/using.xml: Same.
From-SVN: r150642
2009-08-11 04:30:35 +00:00
Benjamin Kosnik
8d1b99e26a
future: Fixes for -fno-exceptions.
...
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Fixes for -fno-exceptions.
* include/bits/functexcept.h: Same.
* libsupc++/exception_ptr.h: Same.
* src/pool_allocator.cc: Same.
* src/future.cc: Same.
* src/functexcept.cc: Same.
* config/abi/pre/gnu.ver: New exports.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
* testsuite/23_containers/deque/operators/1.cc: Separate in two...
* testsuite/23_containers/deque/operators/2.cc: New.
From-SVN: r150633
2009-08-10 18:24:47 +00:00
Paolo Carlini
53a381dc16
istream (operator>>(basic_istream<>&&, _Tp&)): Minor cosmetic changes, inline.
...
2009-08-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/istream (operator>>(basic_istream<>&&, _Tp&)): Minor
cosmetic changes, inline.
* include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&)):
Likewise.
* include/bits/move.h: Minor cosmetic changes.
From-SVN: r150387
2009-08-03 21:53:25 +00:00
Jason Merrill
e7f1930f94
call.c (convert_class_to_reference): Binding an lvalue to an rvalue reference is bad.
...
* call.c (convert_class_to_reference): Binding an lvalue to an
rvalue reference is bad. If the user-defined conversion is bad,
set bad_p before merging conversions.
(maybe_handle_ref_bind): Don't push down bad_p.
(reference_binding): Binding an lvalue to an rvalue reference is bad.
(convert_like_real): Give a helpful error about binding lvalue
to rvalue reference.
(reference_related_p): No longer static.
* typeck.c (build_typed_address): New.
(build_static_cast_1): Add static_cast from lvalue to &&.
* cp-tree.h: Adjust.
* include/bits/move.h (forward): Implement as in N2835.
(move): Implement as in N2831.
* include/std/istream (rvalue stream operator>>): New.
* include/std/ostream (rvalue stream operator<<): New.
Co-Authored-By: Douglas Gregor <doug.gregor@gmail.com>
From-SVN: r150327
2009-07-31 22:26:42 -04:00
Jason Merrill
4c65085391
forward_list.h (splice_after): Use forward.
...
* include/bits/forward_list.h (splice_after): Use forward.
(merge): Likewise.
* include/bits/stl_iterator.h (move_iterator::operator*): Use move.
(move_iterator::operator[]): Use move.
* include/bits/stl_list.h (insert): Use move.
* include/std/thread (_Callable constructor): Use forward.
* include/std/tuple: Don't specify explicit template args to move.
From-SVN: r150326
2009-07-31 22:26:32 -04:00
Paolo Carlini
bd31ae23b2
PR libstdc++/40912 (partial)
...
2009-07-31 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40912 (partial)
* include/std/random: Disable the facility if <stdint.h> is not
available.
From-SVN: r150312
2009-07-31 12:19:26 +00:00
Paolo Carlini
af4beb4b95
valarray (valarray<>::operator=(const valarray<>&), [...]): Implement resolution of DR 630, [Ready] in Frankfurt.
...
2009-07-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/valarray (valarray<>::operator=(const valarray<>&),
valarray<>::operator=(initializer_list<>)): Implement resolution
of DR 630, [Ready] in Frankfurt.
* testsuite/26_numerics/valarray/dr630-1.cc: New.
* testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
* doc/xml/manual/intro.xml: Add an entry for DR 630.
From-SVN: r149929
2009-07-22 12:19:58 +00:00
Paolo Carlini
513c5a5bd9
chrono (duration<>::operator%=, operator%): Add, per DR 934.
...
2009-07-21 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/chrono (duration<>::operator%=, operator%):
Add, per DR 934.
* testsuite/20_util/duration/arithmetic/dr934-1.cc: New.
* testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
* include/std/chrono (operator/): Simplify implementation.
From-SVN: r149856
2009-07-21 14:48:47 +00:00
Jason Merrill
c32097d8b4
re PR libstdc++/37907 ([c++0x] support for std::is_standard_layout)
...
PR libstdc++/37907
Support std::is_standard_layout and std::is_trivial traits,
change POD to C++0x version (except for layout).
* gcc/c-common.c (c_common_reswords): Add __is_standard_layout
and __is_trivial.
* gcc/c-common.h (enum rid): Add RID_IS_STD_LAYOUT and RID_IS_TRIVIAL.
* gcc/cp/cp-tree.h (enum cp_trait_kind): Add CPTK_IS_STD_LAYOUT,
CPTK_IS_TRIVIAL.
(struct lang_type_class): Add non_std_layout.
(CLASSTYPE_NON_STD_LAYOUT): New.
* gcc/cp/class.c (check_bases): Set it.
(check_field_decls): Likewise.
(check_bases_and_members): Likewise.
* gcc/cp/parser.c (cp_parser_primary_expression): Handle RID_IS_STD_LAYOUT,
RID_IS_TRIVIAL.
(cp_parser_trait_expr): Likewise.
* gcc/cp/semantics.c (trait_expr_value): Handle CPTK_IS_STD_LAYOUT,
CPTK_IS_TRIVIAL.
(finish_trait_expr): Likewise.
* gcc/cp/tree.c (scalarish_type_p, trivial_type_p, std_layout_type_p): New.
(pod_type_p): Use them.
* gcc/cp/typeck.c (build_class_member_access_expr): Check
CLASSTYPE_NON_STD_LAYOUT rather than CLASSTYPE_NON_POD_P.
* libstdc++-v3/include/std/type_traits: Add is_standard_layout, is_trivial.
From-SVN: r149721
2009-07-16 16:36:10 -04:00
Paolo Carlini
026ec377e9
re PR c++/36628 ([c++0x] incorrect decltype() handling of conditional operator)
...
2009-07-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (common_type): Remove workaround for
PR36628, now fixed.
From-SVN: r149537
2009-07-12 23:25:29 +00:00
Jonathan Wakely
c8ee2bfd79
future (shared_future): Adjust doxygen comment.
...
2009-06-24 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/future (shared_future): Adjust doxygen comment.
From-SVN: r148895
2009-06-24 08:13:17 +01:00
Benjamin Kosnik
3259554a05
user.cfg.in (PREDEFINED): Add _GLIBCXX_ATOMIC_BUILTINS_*.
...
2009-06-23 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in (PREDEFINED): Add _GLIBCXX_ATOMIC_BUILTINS_*.
(INPUT): Add future.
* include/std/future: Adjust markup.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Adjust
line numbers.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
From-SVN: r148883
2009-06-23 23:24:20 +00:00
Jonathan Wakely
79e2c7b01c
macros.h: Replace @tbd with valid doxygen tag @todo.
...
2009-06-23 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/debug/macros.h: Replace @tbd with valid doxygen tag @todo.
* include/std/ratio: Typo in comment.
From-SVN: r148861
2009-06-23 18:51:48 +01:00
Jonathan Wakely
c910ceff6a
future: New.
...
2009-06-21 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/future: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* src/future.cc: New.
* src/Makefile.am: Add.
* src/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Add export.
* testsuite/30_threads/headers/future/std_c++0x_neg.cc: New.
* testsuite/30_threads/headers/future/types_std_c++0x.cc: New.
* testsuite/30_threads/packaged_task/cons/1.cc: New.
* testsuite/30_threads/packaged_task/cons/2.cc: New.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: New.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: New.
* testsuite/30_threads/packaged_task/cons/move_assign.cc: New.
* testsuite/30_threads/packaged_task/cons/move.cc: New.
* testsuite/30_threads/packaged_task/members/boolconv.cc: New.
* testsuite/30_threads/packaged_task/members/get_future.cc: New.
* testsuite/30_threads/packaged_task/members/get_future2.cc: New.
* testsuite/30_threads/packaged_task/members/invoke.cc: New.
* testsuite/30_threads/packaged_task/members/invoke2.cc: New.
* testsuite/30_threads/packaged_task/members/invoke3.cc: New.
* testsuite/30_threads/packaged_task/members/invoke4.cc: New.
* testsuite/30_threads/packaged_task/members/invoke5.cc: New.
* testsuite/30_threads/packaged_task/members/reset.cc: New.
* testsuite/30_threads/packaged_task/members/reset2.cc: New.
* testsuite/30_threads/packaged_task/members/swap.cc: New.
* testsuite/30_threads/packaged_task/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/promise/cons/1.cc: New.
* testsuite/30_threads/promise/cons/assign_neg.cc: New.
* testsuite/30_threads/promise/cons/copy_neg.cc: New.
* testsuite/30_threads/promise/cons/move_assign.cc: New.
* testsuite/30_threads/promise/cons/move.cc: New.
* testsuite/30_threads/promise/members/get_future.cc: New.
* testsuite/30_threads/promise/members/get_future2.cc: New.
* testsuite/30_threads/promise/members/set_exception.cc: New.
* testsuite/30_threads/promise/members/set_exception2.cc: New.
* testsuite/30_threads/promise/members/set_value.cc: New.
* testsuite/30_threads/promise/members/set_value2.cc: New.
* testsuite/30_threads/promise/members/set_value3.cc: New.
* testsuite/30_threads/promise/members/swap.cc: New.
* testsuite/30_threads/promise/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: New.
* testsuite/30_threads/shared_future/cons/copy.cc: New.
* testsuite/30_threads/shared_future/cons/default_neg.cc: New.
* testsuite/30_threads/shared_future/cons/move.cc: New.
* testsuite/30_threads/shared_future/members/get.cc: New.
* testsuite/30_threads/shared_future/members/get2.cc: New.
* testsuite/30_threads/shared_future/members/has_exception.cc: New.
* testsuite/30_threads/shared_future/members/has_value.cc: New.
* testsuite/30_threads/shared_future/members/is_ready.cc: New.
* testsuite/30_threads/shared_future/members/wait.cc: New.
* testsuite/30_threads/shared_future/members/wait_for.cc: New.
* testsuite/30_threads/shared_future/members/wait_until.cc: New.
* testsuite/30_threads/shared_future/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: New.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: New.
* testsuite/30_threads/unique_future/cons/default_neg.cc: New.
* testsuite/30_threads/unique_future/cons/move.cc: New.
* testsuite/30_threads/unique_future/members/get.cc: New.
* testsuite/30_threads/unique_future/members/get2.cc: New.
* testsuite/30_threads/unique_future/members/has_exception.cc: New.
* testsuite/30_threads/unique_future/members/has_value.cc: New.
* testsuite/30_threads/unique_future/members/is_ready.cc: New.
* testsuite/30_threads/unique_future/members/wait.cc: New.
* testsuite/30_threads/unique_future/members/wait_for.cc: New.
* testsuite/30_threads/unique_future/members/wait_until.cc: New.
* testsuite/30_threads/unique_future/requirements/
explicit_instantiation.cc: New.
* testsuite/performance/30_threads/future/polling.cc: New.
From-SVN: r148765
2009-06-21 15:02:09 +01:00
Jonathan Wakely
cd3b0fafaa
thread (~thread(), [...]): Call terminate if joinable.
...
2009-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/thread (~thread(), operator=(thread&&)): Call terminate
if joinable.
From-SVN: r148552
2009-06-16 21:34:43 +01:00
Benjamin Kosnik
d29d4507b2
functional (function): Use explicit operator bool.
...
2009-05-20 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1_impl/functional (function): Use explicit operator bool.
* include/bits/shared_ptr.h (__shared_ptr): Same.
* include/bits/unique_ptr.h (unique_ptr): Same.
* include/std/mutex (unique_lock): Same.
* include/std/system_error (error_code): Same.
(error_condition): Same.
* include/std/ostream (sentry): Same.
* include/std/istream (sentry): Same.
* testsuite/19_diagnostics/error_condition/operators/bool.cc: Adjust.
* testsuite/19_diagnostics/error_condition/operators/bool_neg.cc: Same.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
* testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Same.
* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Same.
From-SVN: r147756
2009-05-21 01:12:00 +00:00
Jonathan Wakely
ff74fd1325
stl_pair.h (swap): Do not swap rvalues.
...
2009-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/stl_pair.h (swap): Do not swap rvalues.
* include/bits/stl_deque.h (swap): Likewise.
* include/bits/stl_list.h (swap): Likewise.
* include/bits/stl_vector.h (swap): Likewise.
* include/bits/stl_bvector.h (swap): Likewise.
* include/bits/stl_queue.h (swap): Likewise.
* include/bits/stl_stack.h (swap): Likewise.
* include/bits/stl_tree.h (swap): Likewise.
* include/bits/stl_map.h (swap): Likewise.
* include/bits/stl_multimap.h (swap): Likewise.
* include/bits/stl_set.h (swap): Likewise.
* include/bits/stl_multiset.h (swap): Likewise.
* include/bits/forward_list.h (swap): Likewise.
* include/bits/unique_ptr.h (swap): Likewise.
* include/debug/deque (swap): Likewise.
* include/debug/list (swap): Likewise.
* include/debug/vector (swap): Likewise.
* include/debug/map.h (swap): Likewise.
* include/debug/multimap.h (swap): Likewise.
* include/debug/set.h (swap): Likewise.
* include/debug/multiset.h (swap): Likewise.
* include/debug/unordered_map (swap): Likewise.
* include/debug/unordered_set (swap): Likewise.
* include/ext/vstring.h (swap): Likewise.
* include/tr1_impl/unordered_map (swap): Likewise.
* include/tr1_impl/hashtable (swap): Likewise.
* include/tr1_impl/unordered_set (swap): Likewise.
* include/std/tuple (swap): Likewise.
* include/std/mutex (swap): Likewise.
* include/std/thread (swap): Likewise.
(operator<<): Only output to lvalue streams.
* testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: Remove.
* testsuite/23_containers/headers/forward_list/synopsis.cc: Adjust.
* testsuite/23_containers/deque/requirements/dr438/
assign_neg.cc: Adjust line numbers.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Swap with lvalue and also
test non-member swap.
* testsuite/30_threads/thread/swap/2.cc: Remove.
From-SVN: r147678
2009-05-18 23:15:56 +01:00
Jonathan Wakely
5c64575096
mutex: Move std::lock_error to ...
...
2009-05-13 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex: Move std::lock_error to ...
* src/compatibility.cc: Here.
* src/mutex.cc: Likewise.
* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Add checks
for lock types and remove std::lock_error check.
From-SVN: r147609
2009-05-16 11:09:02 +01:00
Jonathan Wakely
efdb734755
re PR libstdc++/39909 (non-TLS version of std::call_once causes terminate)
...
2009-05-05 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/39909
* include/std/mutex (__get_once_functor_lock, __get_once_mutex,
__set_once_functor_lock_ptr): Replace global lock object with local
locks on global mutex.
* src/mutex.cc (__get_once_functor_lock, __get_once_mutex,
__set_once_functor_lock_ptr): Likewise, keeping old function to
preserve ABI.
(__once_proxy): Use pointer to local lock if set, global lock
otherwise.
* config/abi/pre/gnu.ver: Add new symbols to new ABI version.
* testsuite/util/testsuite_abi.cc: Add GLIBCX_3.4.12 version.
* testsuite/30_threads/call_once/39909.cc: New.
From-SVN: r147137
2009-05-05 22:32:38 +01:00
Paolo Carlini
cca36d72b9
2009-04-26 Paolo Carlini <paolo.carlini@oracle.com>
...
Revert the last commit.
From-SVN: r146796
2009-04-26 10:12:08 +00:00
Jonathan Wakely
afdb7762cb
mutex (__get_once_functor_lock, [...]): Replace global lock object with local locks on global mutex.
...
2009-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex (__get_once_functor_lock, __get_once_mutex):
Replace global lock object with local locks on global mutex.
* src/mutex.cc: Likewise.
* config/abi/pre/gnu.ver: Adjust.
* testsuite/30_threads/call_once/call_once2.cc: New.
From-SVN: r146785
2009-04-25 21:14:27 +01:00
Paolo Carlini
bb81f9a082
re PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)
...
2009-04-25 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39880
PR libstdc++/39881
PR libstdc++/39882
* include/std/system_error (is_error_code_enum<errc>): Remove.
(error_condition<>::error_condition(_ErrorCodeEnum,)
error_condition<>::operator=(_ErrorCodeEnum)): Use make_error_condition.
(error_code<>::error_code(_ErrorCodeEnum,),
error_code<>::operator=(_ErrorCodeEnum)): Use make_error_code.
* testsuite/19_diagnostics/system_error/39880.cc: New.
* testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
Adjust.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
From-SVN: r146780
2009-04-25 19:00:52 +00:00
Jan Hubicka
50a681c4ee
condition_variable.cc (condition_variable, [...]): Mark throw()
...
* src/condition_variable.cc (condition_variable,
condition_variable_any constructors): Mark throw()
* src/hash.cc (operator() for long double, string, and wstring): Mark
throw ().
* src/strstream.cc (strstreambuf constructors, freeze, str, pcount,
_M_setup, rdbuf, str): Mark throw ().
* src/chrono.cc (new): Mark throw ().
* include/std/system_error (system_category, generic_category): Mark
throw () and const.
* include/std/chrono (now): Mark throw ().
* include/std/condition_variable (condition_variable,
~condition_variable, condition_variable_any,
~condition_variable_any): Mark throw ().
* include/std/mutex (mutex): Mark throw ().
* include/bits/stl_list.h (swap, transfer, reverse, hook, unhook): Mark
throw.
* include/bits/functional_hash.h (operator() on size_t): Mark pure and throw ().
* include/bits/locale_facets.tcc (__verify_grouping): Mark pure.
* include/bits/locale_classes.h (_S_initialize_once,
_S_clone_c_locale): Mark throw ().
(_S_get_c_name): Mark const and throw ().
(_M_id, _M_compare, _M_transform, _M_compare, _M_transform): Mark throw ().
* include/bits/locale_facets.h (__convert_to_v explicit instances):
Mark throw ().
(_M_convert_to_wmask, _M_initialize_ctype, _S_format_float): Mark throw ().
* include/bits/ios_base.h (_M_dispose_callbacks, _M_init, imbue,
ios_base): Mark throw ()
* include/bits/locale_facets_nonio.h (_M_put): Mark throw.
* include/backward/strstream (strstreambuf constructors): Mark throw ().
(str, freeze, _M_setupf): Mark throw ().
(pcount): Mark pure and throw ().
(rdbuf): Mark const and throw ().
From-SVN: r146328
2009-04-18 21:19:18 +00:00
Jakub Jelinek
748086b7b2
Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
...
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Paolo Carlini
95fe602ebe
random: Remove, empty.
...
2009-04-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/random: Remove, empty.
* include/tr1_impl/random.tcc: Likewise.
* include/std/random: Minor clean-ups, formatting fixes, adjust
copyright years.
* include/bits/random.tcc: Likewise.
* include/bits/random.h: Likewise.
* include/tr1/random: Likewise.
* include/tr1/random.tcc: Likewise.
* include/tr1/random.h: Likewise.
From-SVN: r145493
2009-04-03 10:01:47 +00:00
Benjamin Kosnik
8e79468d01
[multiple changes]
...
2009-04-02 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Change to mersenne_twister_engine, add same defaults as
mersenne_twister_engine/cons/default.cc.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Same.
* include/bits/random.tcc (seed_seq::seed_seq): Uglify parameter
to __il.
* include/bits/random.h (mersenne_twister_engine): Qualify
_ShiftMin1 with namespace __detail.
(__detail::_ShiftMin1): Use __gnu_cxx::__numeric_traits::max until
constexpr std::numeric_limits::max() can be used.
(mersenne_twister_engine): Split apart static asserts into one
assert per message. Temporarily disable the last three.
2009-04-02 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/Makefile.am: Update to N2836. Modified for new random headers.
* include/Makefile.in: Ditto.
* include/tr1_impl/random: Moved to tr1/random.h
* include/tr1_impl/random.tcc: Moved to tr1
* include/tr1/random: Just point to moved tr1 random headers.
* include/tr1/random.tcc: Moved from tr1_impl.
* include/tr1/random.h: Moved from tr1_impl/random.
* include/std/random: Modified to point to std random headers.
* include/bits/random.tcc: New implementation of std random facilities.
* include/bits/random.h: Ditto.
* testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Changed.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/requirements/
non_uint_neg.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
base_move.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
base_copy.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
seed_seq.cc: New.
* testsuite/26_numerics/random/discard_block_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/discard_block_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/discard_block_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_move.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_copy.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed_seq.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
base_move.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
base_copy.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
seed_seq.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
serialize.cc
* testsuite/26_numerics/random/mt19937.cc: New.
* testsuite/26_numerics/random/mt19937_64.cc: New.
* testsuite/26_numerics/random/minstd_rand.cc: New.
* testsuite/26_numerics/random/minstd_rand0.cc: New.
* testsuite/26_numerics/random/ranlux24_base.cc: New.
* testsuite/26_numerics/random/ranlux48_base.cc: New.
* testsuite/26_numerics/random/ranlux24.cc: New.
* testsuite/26_numerics/random/ranlux48.cc: New.
* testsuite/26_numerics/random/knuth_b.cc: New.
* testsuite/26_numerics/random/default_random_engine.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/normal_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/normal_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/normal_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/normal_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/seed_seq/cons/range.cc: New.
* testsuite/26_numerics/random/seed_seq/cons/default.cc: New.
* testsuite/26_numerics/random/seed_seq/requirements/typedefs.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
parms_neg.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
parms_neg.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/poisson_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/poisson_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/poisson_distribution/requirements/
typedefs.cc
* testsuite/26_numerics/random/poisson_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
range.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
initlist.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
num_xbound_fun.cc: New.
* testsuite/26_numerics/random/discrete_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/discrete_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/weibull_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/weibull_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/weibull_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/weibull_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/
requirements/typedefs.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/serialize.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/gamma_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/gamma_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/gamma_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/gamma_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/exponential_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/exponential_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/exponential_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/exponential_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/binomial_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/binomial_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/binomial_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/binomial_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/random_device/cons/
token.cc: New.
* testsuite/26_numerics/random/random_device/cons/
default.cc: New.
* testsuite/26_numerics/random/random_device/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
range.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
num_xbound_fun.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
initlist_fun.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/
requirements/typedefs.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/student_t_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/student_t_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/student_t_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/student_t_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/geometric_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/geometric_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/geometric_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/geometric_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
range.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
num_xbound_fun.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
initlist_fun.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/
requirements/typedefs.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/serialize.cc: New.
From-SVN: r145483
2009-04-02 23:45:56 +00:00
Paolo Carlini
13c4b87740
[multiple changes]
...
2009-03-25 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/std/fstream (basic_filebuf<>::open(const std::string&,
ios_base::openmode), basic_ifstream<>::basic_ifstream(const
std::string&, ios_base::openmode), basic_ifstream<>::
open(const std::string&, ios_base::openmode), basic_ofstream<>::
basic_ofstream(const std::string&, ios_base::openmode),
basic_ofstream<>::open(const std::string&, ios_base::openmode),
basic_fstream<>::basic_fstream(const std::string&, ios_base::openmode),
basic_fstream<>::open(const std::string&, ios_base::openmode)):
Add in C++0x mode.
* testsuite/27_io/basic_ofstream/open/char/2.cc: New.
* testsuite/27_io/basic_ofstream/cons/char/2.cc: Likewise.
* testsuite/27_io/basic_fstream/open/char/1.cc: Likewise.
* testsuite/27_io/basic_fstream/cons/char/1.cc: Likewise.
* testsuite/27_io/basic_ifstream/open/char/1.cc: Likewise.
* testsuite/27_io/basic_ifstream/cons/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/open/char/5.cc: Likewise.
2009-03-25 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/27_io/basic_ofstream/cons/char/2.cc: Rename to...
* testsuite/27_io/basic_ofstream/cons/char/1.cc: ... this.
* testsuite/27_io/basic_fstream/cons/3.cc: Rename to...
* testsuite/27_io/basic_fstream/cons/1.cc: ... this.
From-SVN: r145078
2009-03-25 23:37:53 +00:00
Paolo Carlini
58366b08d7
type_traits (__add_lvalue_reference_helper, [...]): As an optimization, rewrite condition (avoid is_function).
...
2009-03-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (__add_lvalue_reference_helper,
__add_rvalue_reference_helper): As an optimization, rewrite
condition (avoid is_function).
From-SVN: r144868
2009-03-15 00:56:31 +00:00
Jonathan Wakely
5df9ac4b39
iostream: Fix doxygen link.
...
2009-03-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/iostream: Fix doxygen link.
* include/bits/forward_list.h: Fix doxygen markup.
* include/ext/vstring.h: Escape backslash in doxygen comment.
* include/bits/basic_string.h: Likewise.
From-SVN: r144777
2009-03-11 15:16:21 +00:00
Paolo Carlini
23cdf8e8f6
complex (operator+(const complex<>&, const _Tp&), [...]): Do not assume real() returns a reference (against DR 387).
...
2009-03-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/complex (operator+(const complex<>&, const _Tp&),
operator+(const _Tp&, const complex<>&),
operator-(const complex<>&, const _Tp&),
operator-(const _Tp&, const complex<>&)): Do not assume real()
returns a reference (against DR 387).
* testsuite/26_numerics/complex/dr387_2.cc: New.
From-SVN: r144770
2009-03-11 01:51:59 +00:00
Benjamin Kosnik
5b9daa7e60
user.cfg.in: Tweaks.
...
2009-02-20 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Tweaks.
* doc/doxygen/doxygroups.cc: Prefer markup that can be elsewhere,
be elsewhere.
* include/tr1_impl/unordered_map: Just use most specialized
container module.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/array: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_bvector.h: Same.
* include/backward/binders.h: Change binder module to binders.
* include/std/complex: Add complex_numers module.
* include/tr1_impl/complex: Same.
* include/std/valarray: Add numeric_arrays module.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/allocator.h: Add allocators module.
* include/ext/throw_allocator.h
* include/ext/pool_allocator.h
* include/ext/bitmap_allocator.h
* include/ext/new_allocator.h
* include/ext/malloc_allocator.h
* include/ext/array_allocator.h
* include/ext/mt_allocator.h
* include/ext/debug_allocator.h
* include/ext/extptr_allocator.h
* include/tr1_impl/functional: Move namespace markup here.
* include/tr1_impl/regex: Same.
* include/tr1_impl/type_traits: Add metaprogramming module.
* include/std/type_traits: Same.
* include/std/memory: Add memory module.
* include/std/ratio: Add ratio module.
* include/std/chrono: Move namespace markup here, add time module.
* include/std/thread: Move namespace markup here, add concurrency
module.
* include/std/mutex: Use concurrency module.
* include/std/condition_variable: Same.
* include/bits/ios_base.h: Refine io module.
* include/bits/basic_ios.h: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/ext/vstring.h: Correct parameter markup.
* include/bits/shared_ptr.h: Add pointer_abstractions module.
* include/bits/unique_ptr.h: Same.
* include/bits/algorithmfwd.h: Add mutating_algorithms,
non_mutating_algorithms, sorting_algorithms. Adjust nesting.
* include/bits/stl_heap.h: Add markup for new groupings.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_algo.h: Same.
* include/c_compatibility/stdatomic.h: Add atomics module.
* include/c_global/cstdatomic: Same.
* libsupc++/exception: Add exceptions module.
* libsupc++/typeinfo: Same.
* libsupc++/new: Same.
* libsupc++/exception_ptr.h: Same.
* include/std/system_error: Same.
* include/std/stdexcept: Same.
* libsupc++/cxxabi.h: Move doxygroups.cc markup here.
* libsupc++/cxxabi-forced.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix up line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/thread/cons/assign_neg.cc: Same.
* testsuite/30_threads/thread/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/duration/cons/1_neg.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign.cc: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/ratio/cons/cons_overflow.cc: Same.
* testsuite/20_util/ratio/operations/ops_overflow.cc: Same.
From-SVN: r144343
2009-02-21 00:45:21 +00:00
Benjamin Kosnik
aac2878e16
doxygroups.cc: Move algorithm groups into algorithmfwd.h.
...
2009-02-18 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/doxygroups.cc: Move algorithm groups into algorithmfwd.h.
* doc/doxygen/user.cfg.in: Update.
* scripts/run_doxygen: Adjust for new group names.
* include/tr1_impl/random: Update doxygen group markup.
* include/tr1_impl/unordered_map: Same.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/array: Same.
* include/std/numeric: Same.
* include/std/utility: Same.
* include/std/bitset: Same.
* include/std/iosfwd: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/algorithmfwd.h: Same.
* include/bits/stl_function.h: Same.
* include/tr1/cmath: Same.
* include/backward/binders.h: Same.
From-SVN: r144290
2009-02-19 08:15:15 +00:00
Benjamin Kosnik
9b3003d590
system_error (system_category): To system_category().
...
2009-02-17 Benjamin Kosnik <bkoz@redhat.com>
* include/std/system_error (system_category): To system_category().
(generic_category): To generic_category. DR 890.
* src/system_error.cc: Define.
* include/bits/functexcept.h: Only one __throw_system_error.
* src/functexcept.cc: Same.
* include/std/mutex: Fixup for changes above.
* testsuite/19_diagnostics/error_condition/cons/1.cc: Same.
* testsuite/19_diagnostics/error_code/cons/1.cc: Same.
* testsuite/19_diagnostics/system_error/cons-1.cc: Same.
* config/abi/pre/gnu.ver: Clean up exports.
From-SVN: r144259
2009-02-18 07:35:36 +00:00
Chris Fairles
626dda69bc
thread (_Impl_base): Move _M_id out and into ...
...
2009-02-13 Chris Fairles <cfairles@gcc.gnu.org>
Benjamin Kosnik <bkoz@redhat.com>
* include/std/thread (_Impl_base): Move _M_id out and into ...
(thread): ...here. Call _M_make_routine in body of constructors.
Adjust data member usage to reflect changes.
(_M_make_routine): From _M_make_shared_data.
(_M_start_thread): Add __shared_base_type argument.
* src/thread.cc: Fixups for above.
* config/abi/pre/gnu.ver: Adjust exports.
* testsuite/30_threads/thread/native_handle/typesizes.cc: Enable.
* testsuite/30_threads/thread/cons/assign_neg.cc: Adjust line numbers.
* testsuite/30_threads/thread/cons/copy_neg.cc: Same.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r144171
2009-02-13 23:08:50 +00:00
Benjamin Kosnik
d5cf20212b
all.h (compare_type_to_native_type_sizes): To...
...
2009-02-12 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/thread/all.h (compare_type_to_native_type_sizes): To...
(compare_type_to_native_type): ...this, add alignment check.
* testsuite/30_threads/condition_variable_any/native_handle/
typesizes.cc: Modify as above.
* testsuite/30_threads/mutex/native_handle/typesizes.cc: Same.
* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Same.
* testsuite/30_threads/thread/native_handle/typesizes.cc: Same.
* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc: Same.
* testsuite/30_threads/condition_variable/native_handle/
typesizes.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/native_handle/
typesizes.cc: Same.
* testsuite/30_threads/thread/cons/1.cc: Add comments.
* testsuite/30_threads/thread/cons/2.cc: Same.
* testsuite/30_threads/thread/cons/3.cc: Same.
* testsuite/30_threads/thread/cons/4.cc: Same.
* testsuite/30_threads/thread/cons/5.cc: Same.
* testsuite/30_threads/thread/cons/6.cc: Same.
* testsuite/30_threads/thread/cons/7.cc: Same.
* testsuite/30_threads/thread/cons/8.cc: Same.
* testsuite/30_threads/thread/cons/9.cc: New.
* testsuite/30_threads/thread/cons/moveable.cc: New.
* src/condition_variable.cc: Clean up whitespace.
* include/std/condition_variable: Same.
From-SVN: r144142
2009-02-13 00:14:42 +00:00
Benjamin Kosnik
f7459b6c53
condition_variable (condition_variable): Remove _M_internal_mutex.
...
2009-02-09 Benjamin Kosnik <bkoz@redhat.com>
* include/std/condition_variable (condition_variable): Remove
_M_internal_mutex. Add private __native_type typedef.
* src/condition_variable.cc (condition_variable::notify_one):
Remove _M_internal_mutex use. Use typedef.
(condition_variable::notify_all): Same.
* include/std/mutex (mutex): Add private __native_type typedef. Use it.
(recursive_mutex): Same.
(timed_mutex): Same.
(recursive_timed_mutex): Same.
(once_flag): Make __native_type typedef private.
* include/std/thread (this_thread): Add minimal markup.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
Adjust line numbers.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/thread/cons/assign_neg.cc: Same.
* testsuite/30_threads/thread/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
* testsuite/util/thread/all.h: Testsuite utilities for testing thread.
* testsuite/30_threads/condition_variable_any/native_handle/
typesizes.cc: New.
* testsuite/30_threads/mutex/native_handle/typesizes.cc: Same.
* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Same.
* testsuite/30_threads/thread/native_handle/typesizes.cc: Same.
* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc: Same.
* testsuite/30_threads/condition_variable/native_handle/
typesizes.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/native_handle/
typesizes.cc: Same.
From-SVN: r144053
2009-02-10 08:29:57 +00:00
Chris Fairles
4a50cd932f
thread (this_thread::get_id): Inline.
...
2009-02-08 Chris Fairles <cfairles@gcc.gnu.org>
* include/std/thread (this_thread::get_id): Inline.
From-SVN: r144029
2009-02-09 06:32:12 +00:00
Chris Fairles
b47f0044ab
thread (thread<>::thread(_Callable)): Explicitly use _Callable as template argument for _M_make_shared_data.
...
2009-02-08 Chris Fairles <cfairles@gcc.gnu.org>
* include/std/thread (thread<>::thread(_Callable)): Explicitly use
_Callable as template argument for _M_make_shared_data.
* testsuite/30_threads/thread/cons/6.cc: New.
* testsuite/30_threads/thread/cons/7.cc: New.
* testsuite/30_threads/thread/cons/8.cc: New.
From-SVN: r144023
2009-02-09 00:13:47 +00:00
Benjamin Kosnik
d7afcd2b9b
thread (thread::id): Move definition inside thread.
...
2009-02-06 Benjamin Kosnik <bkoz@redhat.com>
* include/std/thread (thread::id): Move definition inside thread.
Use native_handle_type. Remove this_thread::get_id friend.
Change __thread_data_ptr to __shared_base_ptr.
(thread:🆔 :id(native_handle_type): Make public. Still explicit.
Use native_handle_type. Change _M_thread_id to _M_thread.
(thread::__thread_data_base): Rename to _Impl_base. Use id, change
_M_thread_handle to _M_id.
(thread::__thread_data): Rename to _Impl.
Fixup for renames.
(thread::_M_make_thread_data): Return derived type.
(thread::hardware_concurrency): Add definition for default case.
(thread::get_id): Now can define inline.
(thread): Change _M_thread_data to _M_data.
(this_thread::get_id): Now can define inline.
* src/thread.cc (__thread_proxy): Rename to
execute_native_thread_routine.
Fixup for other renames.
* testsuite/30_threads/thread/cons/assign_neg.cc: New.
* testsuite/30_threads/thread/cons/copy_neg.cc: New.
* testsuite/30_threads/thread/algorithm: Move to..
* testsuite/30_threads/thread/swap: ...this.
* testsuite/30_threads/thread/member/hardware_concurrency.cc: Add.
* testsuite/30_threads/thread/id/operators.cc: New.
From-SVN: r144007
2009-02-07 21:56:55 +00:00
Chris Fairles
fe960d9257
tuple (_Head_base<>::_Head_base(_UHead&&)): Formatting.
...
2009-02-05 Chris Fairles <cfairles@gcc.gnu.org>
* include/std/tuple (_Head_base<>::_Head_base(_UHead&&)): Formatting.
(_Head_base<>::__swap_impl): Rename to _M_swap_impl.
(_Tuple_impl<>::__swap_impl): Likewise and make protected to avoid
exposing it in public std::tuple interface.
From-SVN: r143979
2009-02-06 06:01:40 +00:00
Chris Fairles
8644ecf59d
thread (__thread_data_base): Nest class in std::thread.
...
2009-02-05 Chris Fairles <cfairles@gcc.gnu.org>
Benjamin Kosnik <bkoz@redhat.com>
* include/std/thread (__thread_data_base): Nest class in std::thread.
(__thread_data): Likewise.
(__thread_data_ptr): Nest typedef in std::thread.
* src/thread.cc (__thread_proxy): Qualify the above names.
* config/abi/pre/gnu.ver: Remove unused exports.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r143969
2009-02-05 17:47:56 +00:00
Paolo Carlini
bc2631e0c6
re PR libstdc++/25191 (exception_defines.h #defines try/catch)
...
2009-02-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/25191
* libsupc++/exception_defines.h: Depending on __EXCEPTIONS,
deal consistently with __try and __catch too.
* src/localename.cc: Replace try -> __try, catch -> __catch.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/istream.cc: Likewise.
* src/thread.cc: Likewise.
* src/compatibility.cc: Likewise.
* src/bitmap_allocator.cc: Likewise.
* src/ios_init.cc: Likewise.
* include/debug/deque: Likewise.
* include/debug/list: Likewise.
* include/tr1_impl/hashtable: Likewise.
* include/std/bitset: Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
split_join_branch_bag.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/slist: Likewise.
* include/ext/memory: Likewise.
* include/ext/rc_string_base.h: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/vstring.tcc: Likewise.
* include/ext/rope: Likewise.
* include/ext/sso_string_base.h: Likewise.
* include/bits/shared_ptr.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/locale_classes.tcc: Likewise.
* include/bits/locale_facets.tcc: Likewise.
* include/bits/locale_classes.h: Likewise.
* include/bits/forward_list.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/istream.tcc: Likewise.
* include/bits/stl_uninitialized.h: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/vector.tcc: Likewise.
* include/bits/stl_tempbuf.h: Likewise.
* include/bits/deque.tcc: Likewise.
* include/bits/basic_string.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/locale_facets_nonio.tcc: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/tr1/shared_ptr.h: Likewise.
* include/tr1/hypergeometric.tcc: Likewise.
* include/backward/hashtable.h: Likewise.
* libsupc++/exception_ptr.h: Likewise.
* libsupc++/eh_personality.cc: Likewise.
* libsupc++/eh_call.cc: Likewise.
* config/locale/gnu/monetary_members.cc: Likewise.
* config/locale/gnu/time_members.h: Likewise.
* config/locale/generic/time_members.h: Likewise.
From-SVN: r143913
2009-02-03 23:44:53 +00:00
Jonathan Wakely
cbdab9c897
thread: Remove unused headers.
...
2009-01-29 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/thread: Remove unused headers.
(__thread_data_base): Remove unused mutex and base.
(thread::~thread): Only detach if joinable.
(thread::joinable): Test if thread data ptr is empty.
(thread::_M_thread_data_mutex): Remove.
(thread::_M_get_thread_data): Remove.
(thread::_M_make_thread_data): Remove overload, use make_shared.
(thread:🆔 :id): Make constructor explicit.
* src/thread.cc (thread::join,thread::detach): Throw if not joinable.
(thread::_M_start_thread): Break shared_ptr cycle on error.
(__thread_proxy): Use shared_ptr swap instead of copy and reset.
* testsuite/30_threads/thread/member/4.cc: New.
* testsuite/30_threads/thread/member/5.cc: New.
From-SVN: r143772
2009-01-29 23:24:05 +00:00
Jonathan Wakely
78b580a99e
thread (__thread_data_base, thread): Rename member functions to match coding style.
...
2009-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/thread (__thread_data_base, thread): Rename member
functions to match coding style.
(thread::thread,thread::operator=): Define move operations.
* src/thread.cc (__thread_data_base, thread): Rename member functions.
* config/abi/pre/gnu.ver: Adjust.
From-SVN: r143577
2009-01-22 22:33:02 +00:00
Jonathan Wakely
8b6ded8d4f
thread (__thread_data_base::__run): Make non-const.
...
* include/std/thread (__thread_data_base::__run): Make non-const.
* testsuite/30_threads/thread/cons/5.cc: New.
From-SVN: r143483
2009-01-18 12:38:10 +00:00
Chris Fairles
959d14e166
acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME], [...]): Remove.
...
2009-01-15 Chris Fairles <cfairles@gcc.gnu.org>
Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME],
[GLIBCXX_CHECK_NANOSLEEP]): Remove.
([GLIBCXX_ENABLE_LIBSTDCXX_TIME]): Add.
* configure.ac: Adjust.
* doc/xml/manual/configure.xml: Update.
* testsuite/lib/libstdc++.exp (check_v3_target_sched_yield): Add.
* testsuite/lib/dg-options.exp (dg-require-sched-yield): Add.
* testsuite/30_threads/thread/this_thread/2.cc: Use the latter.
* configure: Regenerate.
* config.h.in: Likewise.
* src/thread.cc (thread::thread(), thread::~thread, thread::get_id,
thread::joinable, thread::swap, this_thread::get_id,
this_thread::yield): Define inline...
* include/std/thread: ... here.
* config/abi/pre/gnu.ver: Adjust.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r143397
2009-01-15 14:01:04 +00:00
Benjamin Kosnik
9982752346
re PR libstdc++/36801 (config/cpu/generic/atomicity_mutex/atomicity.h incorrectly relies on global constructor ordering)
...
2009-01-07 Benjamin Kosnik <bkoz@redhat.com>
Jonathan Larmour <jifl@eCosCentric.com>
PR libstdc++/36801
* config/cpu/generic/atomicity_mutex/atomicity.h (get_atomic_mutex):
New.
(__gnu_cxx::__exchange_and_add): Use it.
* src/atomic.cc (get_atomic_mutex): New.
* src/debug.cc (get_safe_base_mutex): New.
* src/locale.cc (get_locale_cache_mutex): New.
* src/mt_allocator.cc (get_freelist): New.
(get_freelist_mutex): New.
* src/pool_allocator.cc (get_palloc_mutex): New.
* include/std/mutex (__once_functor_lock): To
(__get_once_functor_lock): ...this.
* src/mutex.cc (__once_mutex): Don't export, use
(get_once_mutex): ...this.
* config/abi/pre/gnu.ver: Adjust exports.
From-SVN: r143182
2009-01-08 03:14:24 +00:00
Paolo Carlini
6280bdbee3
2009-01-03 Paolo Carlini <paolo.carlini@oracle.com>
...
* Revert last commit, reopen and suspend libstdc++/38678.
From-SVN: r143038
2009-01-03 22:32:08 +00:00
Paolo Carlini
91a96b33a9
re PR libstdc++/38678 ([DR XXX] istream::read() calls streambuf::sgetn())
...
2009-01-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38678
* include/std/istream (basic_istream<>::_M_read): New.
* include/bits/istream.tcc (basic_istream<>::_M_read): Define.
(basic_istream<>::read, basic_istream<>::readsome): Use it.
* include/std/ostream (basic_ostream<>::_M_write_): New.
(basic_ostream<>::_M_write): Adjust.
* include/bits/ostream.tcc (basic_ostream<>::_M_write_): Define.
* testsuite/27_io/basic_istream/read/char/38678.cc: New.
* testsuite/27_io/basic_istream/read/wchar_t/38678.cc: Likewise.
* testsuite/27_io/basic_ostream/write/char/38678.cc: Likewise.
* testsuite/27_io/basic_ostream/write/wchar_t/38678.cc: Likewise.
From-SVN: r142994
2009-01-01 10:08:31 +00:00
Benjamin Kosnik
a40fff0edb
re PR libstdc++/38080 (dead links in libstdc++ headers)
...
2008-12-01 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/38080
* include/std/iostream: Correct URL.
* include/std/streambuf: Same.
* include/std/bitset: Same.
* include/std/iosfwd: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/bits/basic_ios.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_relops.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Ditto.
From-SVN: r142344
2008-12-02 04:55:54 +00:00
Paolo Carlini
9daf8216f4
re PR libstdc++/38244 (bitset initialization from 0 rejected.)
...
2008-11-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38244
* include/std/bitset (bitset<>::bitset(const char*, char, char)):
Remove, do not implement DR 778.
* doc/xml/manual/intro.xml: Remove entry for DR 778.
* testsuite/23_containers/bitset/cons/2.cc: Remove.
* testsuite/23_containers/bitset/cons/dr396.cc: Tweak.
* testsuite/23_containers/bitset/cons/38244.cc: Add.
From-SVN: r142152
2008-11-24 11:13:44 +00:00