ee54a3b318
2014-03-15 Tim Shen <timshen91@gmail.com> * include/bits/regex.h: Add/modify comments. * include/bits/regex_compiler.h: Likewise. * include/bits/regex_executor.h: Likewise. * include/bits/regex_executor.tcc: Likewise. * include/bits/regex_scanner.h: Likewise. From-SVN: r208593
669 lines
28 KiB
Plaintext
669 lines
28 KiB
Plaintext
2014-03-15 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex.h: Add/modify comments.
|
||
* include/bits/regex_compiler.h: Likewise.
|
||
* include/bits/regex_executor.h: Likewise.
|
||
* include/bits/regex_executor.tcc: Likewise.
|
||
* include/bits/regex_scanner.h: Likewise.
|
||
|
||
2014-03-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR ipa/58721
|
||
* config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
|
||
_ZNSt12system_errorC* symbols which are not exported on any target.
|
||
|
||
2014-03-12 Roland McGrath <mcgrathr@google.com>
|
||
Mark Seaborn <mseaborn@google.com>
|
||
|
||
PR libstdc++/59392
|
||
* libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
|
||
the address of a null pointer, not with a null pointer to pointer.
|
||
Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
|
||
* testsuite/18_support/bad_exception/59392.cc: New file.
|
||
|
||
2014-03-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/60499
|
||
* include/debug/forward_list (forward_list::operator=(forward_list&&)):
|
||
Uglify name.
|
||
* include/debug/map (map::operator=(map&&)): Likewise.
|
||
* include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
|
||
* include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
|
||
* include/debug/set (set::operator=(set&&)): Likewise.
|
||
* include/debug/unordered_map
|
||
(unordered_map::operator=(unordered_map&&)): Likewise.
|
||
(unordered_multimap::operator=(unordered_multimap&&)): Likewise.
|
||
* include/debug/unordered_set
|
||
(unordered_set::operator=(unordered_set&&)): Likewise.
|
||
(unordered_multiset::operator=(unordered_multiset&&)): Likewise.
|
||
* include/debug/vector (vector::operator=(vector&&)): Likewise.
|
||
* testsuite/23_containers/forward_list/debug/60499.cc: New
|
||
* testsuite/23_containers/map/debug/60499.cc: New
|
||
* testsuite/23_containers/multimap/debug/60499.cc: New
|
||
* testsuite/23_containers/multiset/debug/60499.cc: New
|
||
* testsuite/23_containers/set/debug/60499.cc: New
|
||
* testsuite/23_containers/unordered_map/debug/60499.cc: New
|
||
* testsuite/23_containers/unordered_multimap/debug/60499.cc: New
|
||
* testsuite/23_containers/unordered_multiset/debug/60499.cc: New
|
||
* testsuite/23_containers/unordered_set/debug/60499.cc: New
|
||
* testsuite/23_containers/vector/debug/60499.cc: New
|
||
|
||
2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
|
||
* doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
|
||
for filesystem and fundamentals TS work items.
|
||
|
||
2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
|
||
|
||
PR c++/60376
|
||
* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
|
||
Adjust dg-error directives.
|
||
|
||
2014-02-26 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex.tcc (match_results<>::format,
|
||
regex_replace<>): Update __out after calling std::copy.
|
||
* testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
|
||
Add testcase.
|
||
* testsuite/28_regex/match_results/format.cc: Likewise.
|
||
|
||
2014-02-22 Marc Glisse <marc.glisse@inria.fr>
|
||
|
||
PR libstdc++/60308
|
||
* include/bits/stl_deque.h (_Deque_base::_Deque_base(const
|
||
allocator_type&)): Remove redundant call to _M_initialize_map.
|
||
(deque::deque(const allocator_type&)): Initialize _Base with a
|
||
constructor that calls _M_initialize_map.
|
||
|
||
Partial revert:
|
||
|
||
2013-09-20 Marc Glisse <marc.glisse@inria.fr>
|
||
PR libstdc++/58338
|
||
(_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
|
||
_M_initialize_map.
|
||
|
||
2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
|
||
Rename testsuite directory shared_mutex to shared_timed_mutex
|
||
for consistency.
|
||
* testsuite/30_threads/shared_mutex: Moved to...
|
||
* testsuite/30_threads/shared_timed_mutex: ...here
|
||
|
||
2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
|
||
Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
|
||
* include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
|
||
* testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/requirements/
|
||
explicit_instantiation.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
|
||
* testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
|
||
* testsuite/30_threads/shared_mutex/requirements/
|
||
standard_layout.cc: Ditto.
|
||
* testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
|
||
* testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
|
||
* testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
|
||
* testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
|
||
* testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
|
||
|
||
2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
* testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
|
||
execution on i?86-*-solaris2.9, remove comment.
|
||
* testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
|
||
|
||
2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
|
||
|
||
* config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
|
||
* config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
|
||
|
||
2014-01-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
|
||
not use varargs when argument could be non-POD.
|
||
(__alloctr_rebind_helper): Eliminate static const bool member by
|
||
using true_type and false_type.
|
||
(allocator_traits::__allocate_helper): Likewise.
|
||
(allocator_traits::__construct_helper): Likewise.
|
||
(allocator_traits::__destroy_helper): Likewise.
|
||
(allocator_traits::__maxsize_helper): Likewise.
|
||
(allocator_traits::__select_helper): Likewise.
|
||
* include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
|
||
* include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
|
||
Remove redundant condition.
|
||
* include/bits/stl_vector.h (vector::operator=(const vector&)):
|
||
Likewise.
|
||
(_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
|
||
indirection through __alloc_traits.
|
||
* include/ext/alloc_traits.h (__allocator_always_compares_equal):
|
||
Eliminate static const bool members by using true_type and false_type.
|
||
(__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
|
||
* testsuite/util/testsuite_allocator.h (PointerBase): Define.
|
||
* testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
|
||
New.
|
||
* testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
|
||
|
||
PR libstdc++/59829
|
||
* include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
|
||
(vector::_M_data_ptr): New overloaded functions to ensure empty
|
||
vectors do not dereference the pointer.
|
||
* testsuite/23_containers/vector/59829.cc: New.
|
||
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
|
||
Adjust dg-error line number.
|
||
* 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.
|
||
|
||
PR libstdc++/21609
|
||
* include/ext/array_allocator.h: Add deprecated attribute.
|
||
|
||
PR libstdc++/57226
|
||
* doc/xml/manual/debug.xml (debug.gdb): Update documentation for
|
||
installation and use of python printers.
|
||
* doc/xml/manual/status_cxx2011.xml: Update.
|
||
* doc/html/*: Regenerate.
|
||
|
||
2014-01-28 Jonathan Wakely <jwakely@redhat.com>
|
||
Kyle Lippincott <spectral@google.com>
|
||
|
||
PR libstdc++/59656
|
||
* include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
|
||
constructor and grant friendship to weak_ptr.
|
||
(weak_ptr::lock()): Use new constructor.
|
||
* include/bits/shared_ptr_base.h
|
||
(_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
|
||
and define specializations.
|
||
(__shared_count): Add new non-throwing constructor.
|
||
(__shared_ptr): Add new non-throwing constructor and grant friendship
|
||
to __weak_ptr.
|
||
(__weak_ptr::lock()): Use new constructor.
|
||
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
|
||
* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
|
||
|
||
2014-01-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/59215
|
||
* include/bits/shared_ptr_base.h
|
||
(_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
|
||
load.
|
||
|
||
2014-01-27 Jason Merrill <jason@redhat.com>
|
||
|
||
Core DR 475
|
||
PR c++/41174
|
||
PR c++/59224
|
||
* libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
|
||
* libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
|
||
(__cxa_allocate_exception): Don't set it here.
|
||
|
||
2014-01-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_map.h: Remove anachronistic comment.
|
||
* include/bits/stl_multimap.h: Add whitespace.
|
||
* testsuite/23_containers/map/modifiers/emplace/1.cc: Use
|
||
-std=gnu++11 instead of -std=c++11.
|
||
* testsuite/23_containers/map/operators/2.cc: Likewise.
|
||
* testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
|
||
* testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
|
||
* testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
|
||
|
||
* acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
|
||
* configure: Regenerate.
|
||
|
||
2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
|
||
PR libstdc++/59531
|
||
* testsuite/experimental/string_view/operations/copy/char/1.cc: New.
|
||
* testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
|
||
|
||
2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
Peter A. Bigot <pab@pabigot.com>
|
||
|
||
PR libstdc++/59531
|
||
* include/experimental/string_view
|
||
(copy(_CharT*, size_type, size_type) const): Correct throw string.
|
||
Correct copy start location.
|
||
|
||
2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
Peter A. Bigot <pab@pabigot.com>
|
||
|
||
PR libstdc++/59530
|
||
* include/experimental/string_view (operator[](size_type) const):
|
||
Fix one-off index error in debug check.
|
||
* testsuite/experimental/string_view/element_access/char/1.cc: Don't
|
||
test basic_string_view at size().
|
||
* testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
|
||
|
||
2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
Peter A. Bigot <pab@pabigot.com>
|
||
|
||
PR libstdc++/59529
|
||
* include/experimental/string_view
|
||
(basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
|
||
* testsuite/experimental/string_view/operations/substr/char/1.cc:
|
||
Comment out catch of out_of_range; No terminating null
|
||
in basic_string_view. Check begin == end.
|
||
* testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
|
||
Ditto.
|
||
|
||
2014-01-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/59548
|
||
* include/debug/safe_base.h (_Safe_sequence_base): Define copy
|
||
constructor to prevent it being implicitly defined as deleted, but
|
||
do not copy anything.
|
||
* include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
|
||
Define copy and move constructors similar to _Safe_sequence_base's.
|
||
* testsuite/23_containers/unordered_map/59548.cc: New.
|
||
|
||
2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
|
||
Steve Ellcey <sellcey@mips.com>
|
||
|
||
* acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
|
||
function.
|
||
* configure.ac: Use GLIBCXX_CHECK_TMPNAM.
|
||
* (configure, config.h.in): Regenerate.
|
||
* include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
|
||
|
||
2014-01-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
|
||
* doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
|
||
|
||
PR libstdc++/59872
|
||
* include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
|
||
* include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
|
||
Likewise.
|
||
* include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
|
||
Likewise.
|
||
* include/bits/stl_set.h (set::operator=(set&&)): Likewise.
|
||
* include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
|
||
functions to perform moving or copying of elements from rvalue tree.
|
||
(_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
|
||
(_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
|
||
* testsuite/23_containers/map/59872.cc: New.
|
||
* testsuite/23_containers/map/56613.cc: Remove duplicate include.
|
||
|
||
2014-01-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_deque.h (_Deque_impl): Move comment.
|
||
|
||
PR libstdc++/58764
|
||
* include/bits/stl_deque.h (deque::deque(const allocator_type&):
|
||
Split into separate default constructor and constructor taking
|
||
allocator.
|
||
* include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
|
||
* include/bits/stl_vector.h (vector::vector(const allocator_type&):
|
||
Likewise.
|
||
* include/debug/deque (deque::deque(const allocator_type&)): Likewise.
|
||
* include/debug/list (list::list(const _Allocator&)): Likewise.
|
||
* include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
|
||
Likewise.
|
||
* include/debug/multimap.h
|
||
(multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
|
||
* include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
|
||
Likewise.
|
||
* include/debug/multiset.h
|
||
(multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
|
||
* include/debug/vector (vector::vector(const allocator_type&)):
|
||
Likewise.
|
||
* include/profile/deque (deque::deque(const _Allocator&)): Likewise.
|
||
* include/profile/list (list::list(const _Allocator&)): Likewise.
|
||
* include/profile/map.h
|
||
(map::map(const _Compare&, const _Allocator&)): Likewise.
|
||
* include/profile/multimap.h
|
||
(multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
|
||
* include/profile/set.h
|
||
(set::set(const _Compare&, const _Allocator&)): Likewise.
|
||
* include/profile/multiset.h
|
||
(multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
|
||
* include/profile/vector (vector::vector(const _Allocator&)):
|
||
Likewise.
|
||
* testsuite/23_containers/deque/58764.cc: New.
|
||
* testsuite/23_containers/list/58764.cc: New.
|
||
* testsuite/23_containers/map/58764.cc: New.
|
||
* testsuite/23_containers/multimap/58764.cc: New.
|
||
* testsuite/23_containers/set/58764.cc: New.
|
||
* testsuite/23_containers/multiset/58764.cc: New.
|
||
* testsuite/23_containers/vector/58764.cc: New.
|
||
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
|
||
Adjust dg-error line number.
|
||
* 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.
|
||
|
||
PR libstdc++/58764 (again)
|
||
* include/bits/stl_list.h (list): Make default constructor's exception
|
||
specification conditional.
|
||
* include/bits/stl_vector.h (vector): Likewise.
|
||
* testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
|
||
to default constructor.
|
||
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
|
||
Adjust dg-error line number.
|
||
* 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.
|
||
|
||
2014-01-21 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex.tcc: Remove incorrect `nosubs` handling.
|
||
* include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
|
||
* testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
|
||
|
||
2014-01-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/56267
|
||
* include/bits/hashtable.h (__cache_default): Do not depend on
|
||
whether the hash function is DefaultConstructible or CopyAssignable.
|
||
(_Hashtable): Adjust static assertions.
|
||
* doc/xml/manual/containers.xml (containers.unordered.cache): Update.
|
||
* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
|
||
dg-error line number.
|
||
* testsuite/23_containers/unordered_set/
|
||
not_default_constructible_hash_neg.cc: Remove.
|
||
|
||
2014-01-20 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* scripts/create_testsuite_files: Add testsuite/experimental in
|
||
the list of folders to search for tests.
|
||
* include/experimental/string_view
|
||
(basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
|
||
incompatible with constexpr qualifier.
|
||
(basic_string_view<>::front()): Likewise.
|
||
(basic_string_view<>::back()): Likewise.
|
||
* testsuite/experimental/string_view/element_access/wchar_t/2.cc:
|
||
Merge dg-options directives into one.
|
||
* testsuite/experimental/string_view/element_access/char/2.cc:
|
||
Likewise. Remove invalid experimental namespace scope on
|
||
string_view_type.
|
||
|
||
2014-01-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/56267
|
||
* include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
|
||
friendship to _Local_iterator_base<..., false>.
|
||
(_Local_iterator_base): Give protected access to all existing members.
|
||
(_Local_iterator_base::_M_curr()): New public accessor.
|
||
(_Local_iterator_base::_M_get_bucket()): New public accessor.
|
||
(_Local_iterator_base<..., false>::_M_init()): New function to manage
|
||
the lifetime of the _Hash_code_base explicitly.
|
||
(_Local_iterator_base<..., false>::_M_destroy()): Likewise.
|
||
(_Local_iterator_base<..., false>): Define copy constructor and copy
|
||
assignment operator that use new functions to manage _Hash_code_base.
|
||
(operator==(const _Local_iterator_base&, const _Local_iterator_base&),
|
||
operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
|
||
Use public API for _Local_iterator_base.
|
||
* include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
|
||
* include/debug/unordered_map (__debug::unordered_map::erase(),
|
||
__debug::unordered_multimap::erase()): Likewise.
|
||
* include/debug/unordered_set (__debug::unordered_set::erase(),
|
||
__debug::unordered_multiset::erase()): Likewise.
|
||
* testsuite/23_containers/unordered_set/56267-2.cc: New test.
|
||
|
||
2014-01-19 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
|
||
Fix parse error of multiple consecutive quantifiers like "a**".
|
||
* include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
|
||
Likewise.
|
||
* testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
|
||
|
||
2014-01-17 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* include/profile/set.h (set): Implement C++11 allocator-aware
|
||
container requirements.
|
||
* include/profile/map.h (map): Likewise.
|
||
* include/profile/multiset.h (multiset): Likewise.
|
||
* include/profile/multimap.h (multimap): Likewise.
|
||
* include/profile/set.h
|
||
(set::operator=(const set&)): Define as default in C++11 mode.
|
||
(set::operator=(set&&)): Likewise.
|
||
* include/profile/map.h
|
||
(map::operator=(const map&)): Likewise.
|
||
(map::operator=(map&&)): Likewise.
|
||
* include/profile/multiset.h
|
||
(multiset::operator=(const multiset&)): Likewise.
|
||
(multiset::operator=(multiset&&)): Likewise.
|
||
* include/profile/multimap.h
|
||
(multimap::operator=(const multimap&)): Likewise.
|
||
(multimap::operator=(multimap&&)): Likewise.
|
||
* include/profile/set.h (set::operator=(std::initializer_list<>)):
|
||
Rely on the same operator from normal mode.
|
||
* include/profile/map.h (map::operator=(std::initializer_list<>)):
|
||
Likewise.
|
||
* include/profile/multiset.h
|
||
(multiset::operator=(std::initializer_list<>)): Likewise.
|
||
* include/profile/multimap.h
|
||
(multimap::operator=(std::initializer_list<>)): Likewise.
|
||
* include/profile/set.h (set::swap(set&)): Add noexcept
|
||
specification.
|
||
* include/profile/map.h (map::swap(map&)): Likewise.
|
||
* include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
|
||
* include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
|
||
|
||
2014-01-17 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
|
||
use std::map.
|
||
* include/bits/regex_automaton.h: Do not use std::set.
|
||
* include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
|
||
_BracketMatcher<>::_M_add_collating_element(),
|
||
_BracketMatcher<>::_M_add_equivalence_class(),
|
||
_BracketMatcher<>::_M_make_range()): Likewise.
|
||
* include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
|
||
Likewise.
|
||
* include/bits/regex_executor.h: Do not use std::queue.
|
||
* include/bits/regex_executor.tcc (_Executor<>::_M_main(),
|
||
_Executor<>::_M_dfs()): Likewise.
|
||
* include/std/regex: Remove <map>, <set> and <queue>.
|
||
|
||
2014-01-17 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
|
||
basic_regex<>::assign()): Change __compile_nfa to accept
|
||
const _CharT* only.
|
||
* include/bits/regex_compiler.h: Change _Compiler's template
|
||
argument from <_FwdIter, _TraitsT> to <_TraitsT>.
|
||
* include/bits/regex_compiler.tcc: Likewise.
|
||
|
||
2014-01-17 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex_compiler.h: Change _ScannerT into char-type
|
||
templated.
|
||
* include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
|
||
_ScannerBase from _Scanner; Change _Scanner's template argument from
|
||
_FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
|
||
instead.
|
||
* include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
|
||
_Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
|
||
_Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
|
||
Likewise.
|
||
* include/std/regex: Add <cstring> for using strchr.
|
||
|
||
2014-01-17 Tim Shen <timshen91@gmail.com>
|
||
|
||
* bits/regex_automaton.tcc: Indentation fix.
|
||
* bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
|
||
_RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
|
||
_BracketMatcher<>): Add bool option template parameters and
|
||
specializations to make matching more efficient and space saving.
|
||
* bits/regex_compiler.tcc: Likewise.
|
||
|
||
2014-01-15 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
PR libstdc++/59712
|
||
* include/bits/hashtable_policy.h: Fix some long lines.
|
||
* include/bits/hashtable.h (__hash_code_base_access): Define and
|
||
use it to check its _M_bucket_index noexcept qualification. Use
|
||
also in place of...
|
||
(__access_protected_ctor): ...this.
|
||
* testsuite/23_containers/unordered_set/instantiation_neg.cc:
|
||
Adapt line number.
|
||
* testsuite/23_containers/unordered_set/
|
||
not_default_constructible_hash_neg.cc: Likewise.
|
||
|
||
2014-01-13 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* include/debug/set.h (set): Implement C++11 allocator-aware
|
||
container requirements.
|
||
* include/debug/map.h (map): Likewise.
|
||
* include/debug/multiset.h (multiset): Likewise.
|
||
* include/debug/multimap.h (multimap): Likewise.
|
||
* include/debug/set.h (set::operator=(set&&)): Add noexcept and
|
||
fix implementation regarding management of safe iterators.
|
||
* include/debug/map.h (map::operator=(map&&)): Likewise.
|
||
* include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
|
||
* include/debug/multimap.h (multimap::operator=(multimap&&)):
|
||
Likewise.
|
||
* include/debug/set.h (set::operator=(std::initializer_list<>)):
|
||
Rely on the same operator from normal mode.
|
||
* include/debug/map.h (map::operator=(std::initializer_list<>)):
|
||
Likewise.
|
||
* include/debug/multiset.h
|
||
(multiset::operator=(std::initializer_list<>)): Likewise.
|
||
* include/debug/multimap.h
|
||
(multimap::operator=(std::initializer_list<>)): Likewise.
|
||
* include/debug/set.h (set::swap(set&)): Add noexcept
|
||
specification, add allocator equality check.
|
||
* include/debug/map.h (map::swap(map&)): Likewise.
|
||
* include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
|
||
* include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
|
||
|
||
2014-01-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/59698
|
||
* doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
|
||
and stylistic improvements.
|
||
* doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
|
||
and update for C++11.
|
||
* doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
|
||
|
||
PR libstdc++/59687
|
||
* doc/xml/manual/backwards_compatibility.xml
|
||
(backwards.third.nocreate_noreplace): Correct and expand.
|
||
|
||
PR libstdc++/59699
|
||
* doc/xml/manual/support.xml (std.support.types.null): Update links.
|
||
|
||
2014-01-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/59738
|
||
* include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
|
||
support for non-Movable types.
|
||
|
||
PR libstdc++/59680
|
||
* src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
|
||
|
||
2014-01-08 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
|
||
*this allocator instance when building temporary vector instance
|
||
so that *this allocator does not get moved.
|
||
* include/debug/safe_base.h
|
||
(_Safe_sequence_base(_Safe_sequence_base&&)): New.
|
||
* include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
|
||
move constructor from _Safe_sequence_base.
|
||
(__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
|
||
safe iterators if the instance is moved.
|
||
(__gnu_debug::vector<>::operator=(vector&&)): Likewise.
|
||
* testsuite/23_containers/vector/allocator/move.cc (test01): Add
|
||
check on a vector iterator.
|
||
* testsuite/23_containers/vector/allocator/move_assign.cc
|
||
(test02): Likewise.
|
||
(test03): New, test with a non-propagating allocator.
|
||
* testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
|
||
|
||
2014-01-07 Tim Shen <timshen91@gmail.com>
|
||
|
||
* include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
|
||
_AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
|
||
_CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
|
||
_BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
|
||
_BracketMatcher<>::_M_add_char(),
|
||
_BracketMatcher<>::_M_add_collating_element(),
|
||
_BracketMatcher<>::_M_add_equivalence_class(),
|
||
_BracketMatcher<>::_M_add_character_class(),
|
||
_BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
|
||
_BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
|
||
Fix _AnyMatcher behavior of POSIX style and move _M_flags
|
||
to template parameter; Add cache for _BracketMatcher. Adjust
|
||
declarations from here...
|
||
* include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
|
||
imbuing a regex will trigger a recompilation to rebuild the cache.
|
||
* include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
|
||
_Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
|
||
different template bool parameters.
|
||
* include/bits/regex_executor.h: Remove unnecessary declarations.
|
||
* include/std/regex: Adjust including orders.
|
||
* testsuite/28_regex/traits/char/user_defined.cc: New.
|
||
* testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
|
||
|
||
2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
|
||
* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
|
||
* config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
|
||
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
|
||
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
|
||
|
||
2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
|
||
|
||
Update copyright years
|
||
|
||
2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
|
||
|
||
* testsuite/18_support/new_handler.cc,
|
||
testsuite/18_support/terminate_handler.cc,
|
||
testsuite/18_support/unexpected_handler.cc: Use the standard form for
|
||
the copyright notice.
|
||
|
||
Copyright (C) 2014 Free Software Foundation, Inc.
|
||
|
||
Copying and distribution of this file, with or without modification,
|
||
are permitted in any medium without royalty provided the copyright
|
||
notice and this notice are preserved.
|