summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include/bits
Commit message (Collapse)AuthorAgeFilesLines
...
* 2013-06-07 Ed Smith-Rowland <3dw4rd@verizon.net>emsr2013-06-081-25/+18
| | | | | | | | | | | | | | Simplify and clean up library literals. * include/std/chrono: Simplify namespace and versioning management. * include/bits/basic_string.h: Ditto. * testsuite/20_util/duration/literals/types.cc: Remove bogus comment. * testsuite/20_util/duration/literals/values.cc: Ditto. * testsuite/21_strings/basic_string/literals/types.cc: Ditto. * testsuite/21_strings/basic_string/literals/values.cc: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199861 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/alloc_traits.h (allocator_traits::max_size()): LWGredi2013-06-081-1/+1
| | | | | | 2162: Add noexcept. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199858 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.redi2013-06-082-0/+375
| | | | | | | | | | | | | | * include/bits/stl_algobase.h (equal, mismatch): Likewise. * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case. * testsuite/25_algorithms/equal/2.cc: New. * testsuite/25_algorithms/equal/check_type2.cc: New. * testsuite/25_algorithms/is_permutationqual/2.cc: New. * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New. * testsuite/25_algorithms/mismatch/2.cc: New. * testsuite/25_algorithms/mismatch/check_type2.cc: New. * testsuite/util/testsuite_iterators.h: Fix spelling. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199854 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>emsr2013-06-011-1/+1
| | | | | | | | | | include/std/chrono: Collapse redundant 'inline' from 'inline constexpr'. include/std/tuple: Ditto. include/bits/move.h: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199587 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>emsr2013-06-012-0/+454
| | | | | | | | | | | | | | | | | | | | Implement N3642 - User-defined Literals for Standard Library Types * include/bits/parse_numbers.h: New. * include/std/chrono: Add duration literal operators. * include/bits/basic_string.h: Add string literal operators. * include/Makefile.in: Add parse_numbers.h. * include/Makefile.am: Ditto. * testsuite/20_util/duration/literals/values.cc: New. * testsuite/20_util/duration/literals/types.cc: New. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust. * testsuite/21_strings/basic_string/literals/values.cc: New. * testsuite/21_strings/basic_string/literals/types.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199584 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-05-241-8/+0
| | | | | | | | | | * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t overload. * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199313 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/unique_ptr.h (make_unique): Declare inline.redi2013-05-183-17/+150
| | | | | | | | | | | | (unique_ptr<T[],D>::reset()): Combine two overloads into one. (default_delete, unique_ptr): Add doxygen comments. * include/bits/shared_ptr_base.h: Improve doxygen comments. * include/bits/shared_ptr.h: Likewise. * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line number. * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199069 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/unique_ptr.h (make_unique): Define.redi2013-05-181-0/+31
| | | | | | | | * testsuite/20_util/unique_ptr/creation/single.cc: New. * testsuite/20_util/unique_ptr/creation/array.cc: New. * testsuite/20_util/unique_ptr/creation/array_neg.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199057 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/basic_string.h (getline): Fix doxygen comments.redi2013-05-151-8/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198920 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-05-141-4/+12
| | | | | | | | * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast): Use std::pointer_traits. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198891 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-05-108-19/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/54577 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode. (_Deque_iterator<>::_M_const_cast): Add. (deque<>::_M_erase): Declare. * include/bits/deque.tcc: ... and define. * include/bits/stl_list.h (erase): Fix signatures in C++11 mode. (_List_const_iterator<>::_M_const_cast): Add. * include/bits/list.tcc (erase (iterator)): Fix. * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast): Add; include <ext/cast.h>. * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode. (vector<>::_M_erase): Declare. * include/bits/stl_bvector.h: Likewise. * include/bits/vector.tcc (vector<>::_M_erase): Define. * include/ext/vstring.h (erase): Fix signatures in C++11 mode. * include/debug/deque: Adjust. * include/debug/list: Likewise. * include/debug/vector: Likewise. * include/profile/deque: Likewise. * include/profile/list: Likewise. * include/profile/vector: Likewise. * testsuite/util/exception/safety.h (erase_base<deque>, erase_base<deque>, erase_base<vector>): Remove. (erase_base<__versa_string>): Update. * testsuite/ext/vstring/modifiers/char/54577.cc: New. * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise. * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise. * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise. * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc: Likewise. * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust dg-error 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198790 138bc75d-0d04-0410-961f-82ee72b054a4
* Mark all member functions with memory models always inline v2ak2013-05-091-42/+46
| | | | | | | | | | | | | | | | | | | | | | | | | When a non constant memory model is passed to __atomic_* gcc falls back to seq_cst. This drops any HLE acquire or release bits. This can happen when <atomic> is used with -O0 as the member functions are not always inlined then and the memory argument passed in ends up being non-constant. v2: Use _GLIBCXX_ALWAYS_INLINE libstdc++-v3/: 2013-05-08 Andi Kleen <ak@linux.intel.com> PR target/55947 * libstdc++-v3/include/bits/atomic_base.h (_GLIBCXX_ALWAYS_INLINE): Add new macro. (atomic_thread_fence, atomic_signal_fence, test_and_set, clear, store, load, exchange, compare_exchange_weak) compare_exchange_strong, fetch_add, fetch_sub, fetch_and, fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198733 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fixredi2013-04-281-2/+2
| | | | | | | comment. * include/std/mutex (__recursive_mutex_base): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198368 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/51365redi2013-04-281-42/+79
| | | | | | | | | | | | | | | | * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to implement EBO safely. (_Sp_counted_base::_M_get_deleter): Add noexcept. (_Sp_counter_ptr): Use noexcept instead of comments. (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper. (_Sp_counted_ptr_inplace): Likewise. * testsuite/20_util/shared_ptr/cons/51365.cc: New. * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to custom allocator and test construction with custom allocator. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198367 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-04-26 François Dumont <fdumont@gcc.gnu.org>fdumont2013-04-261-1/+1
| | | | | | | | | * include/bits/hashtable_policy.h (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics. * testsuite/23_containers/unordered_set/insert/move_range.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198346 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-04-251-12/+14
| | | | | | | | | | | | PR libstdc++/57065 * include/debug/unordered_map (unordered_map, unordered_multimap): Fix default allocator type. * include/profile/unordered_map (unordered_map, unordered_multimap): Likewise. * include/bits/unordered_map.h: Fix comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198279 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-04-22 François Dumont <fdumont@gcc.gnu.org>fdumont2013-04-224-164/+769
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/hashtable_policy.h: Add C++11 allocator support. * include/bits/hashtable.h: Likewise. * include/bits/unordered_set.h: Likewise. * include/bits/unordered_map.h: Likewise. * include/debug/unordered_set: Likewise. * include/debug/unordered_map: Likewise. * include/std/unordered_set: Remove bits/algobase.h include. Replace bits/alloc_traits.h by ext/alloc_traits.h. * include/std/unordered_map: Likewise. * include/ext/throw_allocator.h: Add checks on calls to allocator construct/destroy. (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw. (std::hash<__gnu_cxx::throw_value_random>): Likewise. * testsuite/util/regression/rand/priority_queue /container_rand_regression_test.tcc: Adapt. * testsuite/util/regression/rand/assoc /container_rand_regression_test.tcc: Likewise. * testsuite/util/testsuite_counter_type.h: Add count of destructors. * testsuite/23_containers/unordered_set /not_default_constructible_hash_neg.cc: Adjust dg-error line number. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise. * testsuite/23_containers/unordered_set/allocator/copy.cc: New. * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New. * testsuite/23_containers/unordered_set/allocator/minimal.cc: New. * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New. * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New. * testsuite/23_containers/unordered_set/allocator/swap.cc: New. * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New. * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc: New. * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New. * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc: New. * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New. * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New. * testsuite/23_containers/unordered_map/allocator/copy.cc: New. * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New. * testsuite/23_containers/unordered_map/allocator/minimal.cc: New. * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New. * testsuite/23_containers/unordered_map/allocator/noexcept.cc: New. * testsuite/23_containers/unordered_map/allocator/swap.cc: New. * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New. * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc: New. * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New. * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc: New. * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New. * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198158 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-04-221-4/+10
| | | | | | | | | PR libstdc++/57010 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment. * testsuite/25_algorithms/pop_heap/57010.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198125 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/Makefile.am: Add ext/aligned_buffer.hredi2013-04-072-14/+9
| | | | | | | | | | | | * include/Makefile.in: Regenerate. * include/ext/aligned_buffer.h: New. * include/std/future (_Result): Use __aligned_buffer. * include/bits/forward_list.h (_Fwd_list_node): Likewise. * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197554 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/forward_list.h: Only include required headers.redi2013-04-071-5/+8
| | | | | | | (forward_list::reference): Define directly, not using __alloc_traits. (forward_list::const_reference): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197552 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-03-182-0/+8
| | | | | | | | | | | | | | | | | PR libstdc++/55977 (partial, std::vector and std::deque bits) * include/bits/stl_vector.h (_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag)): Use emplace_back. * include/bits/deque.tcc (_M_range_initialize(_InputIterator, _InputIterator, std::input_iterator_tag)): Likewise. * testsuite/23_containers/vector/cons/55977.cc: New. * testsuite/23_containers/deque/cons/55977.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196774 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-03-171-0/+4
| | | | | | | | | | | | | PR libstdc++/55979 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator, _InputIterator, __false_type)): Use emplace_back. * testsuite/23_containers/list/cons/55979.cc: New. * testsuite/23_containers/list/modifiers/1.h: Adjust. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust dg-error line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196755 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/56613redi2013-03-141-2/+6
| | | | | | | | * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use allocator_traits instead of calling construct directly. * testsuite/23_containers/map/56613.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196666 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/memoryfwd.h: New. Centralize forward declarations.bkoz2013-03-087-31/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/algorithmfwd.h: Consistent comments. * include/bits/localefwd.h: Same. * include/ext/vstring_fwd.h: Same. * include/parallel/algorithmfwd.h: Same. * include/parallel/numericfwd.h: Same. * include/std/iosfwd: Same. * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator forward decl. * include/ext/alloc_traits.h: Remove allocator forward decl. * include/bits/stl_construct.h: Same. * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator forward decl. Consistent comments. * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO. * include/Makefile.am (bits_headers): Add memoryfwd.h. * include/Makefile.in: Regenerate. * configure: Same. e enter the commit message for your changes. Lines starting git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196559 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-03-08 François Dumont <fdumont@gcc.gnu.org>fdumont2013-03-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/vector.tcc (vector<>operator=(const vector<>&): Reset pointers after deallocation when memory can be reused. * testsuite/23_containers/vector/allocator/minimal.cc: Insert elements to really challenge C++11 allocator integration. * testsuite/23_containers/vector/allocator/copy.cc: Likewise. * testsuite/23_containers/vector/allocator/copy_assign.cc: Likewise. * testsuite/23_containers/vector/allocator/move_assign.cc: Likewise. * testsuite/23_containers/vector/allocator/swap.cc: Likewise and swap vector back before checks on memory/personality mapping are performed. * testsuite/23_containers/forward_list/allocator/minimal.cc: Insert element to really challenge C++11 allocator integration. * testsuite/23_containers/forward_list/allocator/copy.cc: Likewise. * testsuite/23_containers/forward_list/allocator/copy_assign.cc: Likewise. * testsuite/23_containers/forward_list/allocator/move_assign.cc: Likewise. * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise and swap forward_list back before checks on memory/personality mapping are performed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196557 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/56012redi2013-02-261-7/+13
| | | | | | | | | | | | * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion. * testsuite/29_atomics/atomic/operators/56012.cc: New. PR libstdc++/56011 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add missing overload. * testsuite/29_atomics/atomic/operators/56011.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196296 138bc75d-0d04-0410-961f-82ee72b054a4
* * doc/html/faq.html: Fix spelling.redi2013-02-202-3/+3
| | | | | | | | | | * doc/xml/faq.xml: Likewise. * include/bits/basic_ios.h: Likewise. * include/bits/regex.h: Likewise. * include/std/istream: Likewise. * include/std/streambuf: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196184 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>bkoz2013-02-202-6/+18
| | | | | | | | | | | | | | | | | | | * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT, AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1. * include/bits/stl_pair.h: Add to utilities group. * include/std/tuple: Same. * include/std/typeindex: Same. * include/bits/stringfwd.h: Fix markup. * include/std/limits: Same. * include/std/type_traits: Same. * include/tr1/memory: Same. * include/tr1/regex: Same. * scripts/run_doxygen: Comment. * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196162 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-13 François Dumont <fdumont@gcc.gnu.org>fdumont2013-02-132-9/+10
| | | | | | | | | | * include/bits/hashtable_policy.h (_Hash_code_base): Restore default constructor protected. * include/bits/hashtable.h: static assert that _Hash_code_base has a default constructor available through inheritance. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196030 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-02-121-14/+13
| | | | | | | | | | | | | * include/bits/random.tcc (__transform): Remove. (__normalize): Add. (discrete_distribution<>::param_type::_M_initialize): Adjust. (piecewise_constant_distribution<>::param_type::_M_initialize): Likewise. (piecewise_linear_distribution<>::param_type::_M_initialize): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195970 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-02-111-5/+0
| | | | | | | | | | | | | | PR libstdc++/56282 Revert: 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net> PR libstdc++/56193 * include/bits/basic_ios.h: Replace operator void*() const with explicit operator bool() const in C++11 and greater. * testsuite/27_io/basic_ios/pr56193.cc: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195939 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/56267redi2013-02-111-1/+10
| | | | | | | | | | | | * include/bits/hashtable.h (__cache_default): Check if hash function is copy assignable. * testsuite/23_containers/unordered_set/56267.cc: New. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error line number. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195936 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/56278redi2013-02-111-7/+8
| | | | | | | | * include/bits/hashtable_policy.h (_Hash_code_base): Make default constructor public. * testsuite/23_containers/unordered_set/56278.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195935 138bc75d-0d04-0410-961f-82ee72b054a4
* PR56193 - Wrong test operator for basic_ios in C++11.emsr2013-02-071-0/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195849 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-04 François Dumont <fdumont@gcc.gnu.org>fdumont2013-02-043-3/+30
| | | | | | | | | | | | | | | | * include/bits/functional_hash.h (std::__is_fast_hash<>): New. * include/bits/basic_string.h: Specialize previous to mark std::hash for string types as slow. * include/bits/hashtable.h (__cache_default): Replace is_integral with __is_fast_hash. * src/c++11/hash_c++0x.cc: Add type_traits include. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adapt dg-error line number. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195738 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>paolo2013-02-042-7/+3
| | | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/56202 (again) * include/bits/random.tcc (binomial_distribution<>:: _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko in previous commit. * include/bits/random.h: Fix comment typo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195732 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>paolo2013-02-041-0/+6
| | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/56202 * include/bits/random.tcc (binomial_distribution<>:: _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid division by zero. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195722 138bc75d-0d04-0410-961f-82ee72b054a4
* Update copyright in libstdc++-v3.rsandifo2013-02-0391-181/+91
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195701 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-02-01 François Dumont <fdumont@gcc.gnu.org>fdumont2013-02-011-72/+2
| | | | | | | | | | | | | * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt) (_Prime_rehash_policy::_M_need_rehash): Move definition... * src/c++11/hashtable_c++0x.cc: ... here. * src/shared/hashtable-aux.cc: Remove c++config.h include. * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy symbols. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195676 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/56112redi2013-01-281-1/+1
| | | | | | | | * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace to construct value_type explicitly before trying to extract the key. * testsuite/23_containers/unordered_map/cons/56112.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195520 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-01-28 François Dumont <fdumont@gcc.gnu.org>fdumont2013-01-282-91/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/hashtable_policy.h (_Local_iterator_base): Use _Hashtable_ebo_helper to embed functors into the local_iterator when necessary. Pass information about functors involved in hash code by copy. * include/bits/hashtable.h (__cache_default): Do not cache for builtin integral types unless the hash functor is not noexcept qualified or is not default constructible. Adapt static assertions and local iterator instantiations. * include/debug/unordered_set (std::__debug::unordered_set<>::erase): Detect local iterators to invalidate using contained node rather than generating a dummy local_iterator instance. (std::__debug::unordered_multiset<>::erase): Likewise. * include/debug/unordered_map (std::__debug::unordered_map<>::erase): Likewise. (std::__debug::unordered_multimap<>::erase): Likewise. * testsuite/performance/23_containers/insert_erase/41975.cc: Test std::tr1 and std versions of unordered_set regardless of any macro. Add test on default cache behavior. * testsuite/performance/23_containers/insert/54075.cc: Likewise. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adapt line number. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: New. * testsuite/23_containers/unordered_set/buckets/swap.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195517 138bc75d-0d04-0410-961f-82ee72b054a4
* libstdc++: Add mem_order_hle_acquire/release to atomic.h v2ak2013-01-201-45/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | The underlying compiler supports additional __ATOMIC_HLE_ACQUIRE/RELEASE memmodel flags for TSX, but this was not exposed to the C++ wrapper. Handle it there. These are additional flags, so some of assert checks need to mask off the flags before checking the memory model type. libstdc++-v3/: 2013-01-12 Andi Kleen <ak@linux.intel.com> Jonathan Wakely <jwakely.gcc@gmail.com> PR libstdc++/55223 * include/bits/atomic_base.h (__memory_order_modifier): Add __memory_order_mask, __memory_order_modifier_mask, __memory_order_hle_acquire, __memory_order_hle_release. (operator|,operator&): Add. (__cmpexch_failure_order): Rename to __cmpexch_failure_order2. (__cmpexch_failure_order): Add. (clear, store, load, compare_exchange_weak, compare_exchange_strong): Handle flags. * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Add. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195321 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/55043 (again)redi2013-01-163-47/+27
| | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/alloc_traits.h (allocator_traits::construct): Disable unless construction would be well-formed. (__allow_copy_cons, __check_copy_constructible): Define. * include/bits/unordered_map.h (__check_copy_constructible): Use as base class so copy constructor will be deleted if appropriate. (is_copy_constructible): Remove specialization. * include/bits/unordered_set.h: Likewise. * include/debug/unordered_map.h: Undo previous commit. Default copy and move constructors. * include/debug/unordered_set.h: Likewise. * include/profile/unordered_map.h: Undo previous commit. * include/profile/unordered_set.h: Likewise. * testsuite/23_containers/unordered_map/55043.cc: Fix test. * testsuite/23_containers/unordered_multimap/55043.cc: Likewise. * testsuite/23_containers/unordered_multiset/55043.cc: Likewise. * testsuite/23_containers/unordered_set/55043.cc: Likewise. * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL, cannot support incomplete types. * testsuite/23_containers/unordered_multimap/requirements/53339.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195253 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/55043redi2013-01-164-4/+79
| | | | | | | | | | | | | | | | | | | * include/std/unordered_map: Include alloc_traits.h * include/std/unordered_set: Likewise. * include/bits/alloc_traits.h: Define __is_copy_insertable. * include/bits/unordered_map.h: Use it. * include/bits/unordered_set.h: Likewise. * include/debug/unordered_map.h: Likewise. * include/debug/unordered_set.h: Likewise. * include/profile/unordered_map.h: Likewise. * include/profile/unordered_set.h: Likewise. * include/bits/hashtable.h: Fix comment typos. * testsuite/23_containers/unordered_map/55043.cc: New. * testsuite/23_containers/unordered_multimap/55043.cc: New. * testsuite/23_containers/unordered_multiset/55043.cc: New. * testsuite/23_containers/unordered_set/55043.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195231 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/unordered_map.h: Fix typo in comments.redi2013-01-061-3/+3
| | | | | | | * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket counts for unordered associative containers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194954 138bc75d-0d04-0410-961f-82ee72b054a4
* Update Copyright years for files modified in 2011 and/or 2012.jakub2013-01-0412-14/+15
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194903 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/std/functional (_Require): Move to ...redi2012-12-202-80/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/std/type_traits (_Require): ... here. * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up): Handle unique_ptr for arrays or with custom pointer types. (__shared_ptr::__shared_ptr(unique_ptr<_Tp1, _Del>&&): Likewise. * include/bits/unique_ptr.h (unique_ptr<_Tp[], _Dp>): Use _Dp::pointer if defined. Implement proposed resolution of LWG 2118. * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: New. * testsuite/20_util/unique_ptr/assign/cv_qual.cc: New. * testsuite/20_util/unique_ptr/cons/array_convertible_neg.cc: New. * testsuite/20_util/unique_ptr/cons/convertible_neg.cc: New. * testsuite/20_util/unique_ptr/cons/cv_qual.cc: New. * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: New. * testsuite/20_util/unique_ptr/requirements/pointer_type_array.cc: New. * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Adjust comments. * testsuite/20_util/unique_ptr/cons/pointer_array_convertible_neg.cc: Likewise. * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Likewise. * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line number. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * testsuite/20_util/default_delete/48631_neg.cc: Likewise. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise. * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise. * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust dg-error text. * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Use different instantiations so static_assert fails for each. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194651 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix incorrect @headername Doxygen macro invocation.aaw2012-11-271-1/+1
| | | | | | | | | | | Format is @headername{hdr1,hdr2} not @headername{hdr1 or hdr2}. 2012-11-27 Ollie Wild <aaw@google.com> * include/bits/stl_tree.h (@headername): Fix incorrect Doxygen macro invocation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193869 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-11-20 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-11-201-7/+6
| | | | | | | | | | | PR libstdc++/55413 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Initialize __bbegin_bkt and __prev_bkt to avoid uninitialized warnings. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193663 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-11-20 Matthias Klose <doko@ubuntu.com>doko2012-11-201-1/+1
| | | | | | | | | * doc/doxygen/user.cfg.in (ALIASES). Escape sharp braces. * include/bits/allocator.h: Escape sharp braces in comment. * include/profile/impl/profiler_algos.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193662 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud