1 2014-04-27 Lars Gullik Bjønnes <larsbj@gullik.org>
4 * include/experimental/optional (operator!=): Implement in terms of
6 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
7 * testsuite/experimental/optional/relops/2.cc: Likewise.
8 * testsuite/experimental/optional/relops/3.cc: Likewise.
9 * testsuite/experimental/optional/relops/4.cc: Likewise.
10 * testsuite/experimental/optional/relops/5.cc: Likewise.
11 * testsuite/experimental/optional/relops/6.cc: Likewise.
13 2014-04-27 Jonathan Wakely <jwakely@redhat.com>
16 * include/std/tuple (get): Qualify calls to prevent ADL.
17 * testsuite/20_util/tuple/60497.cc: New.
19 * include/std/tuple (tuple_element_t): Define.
20 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
22 * testsuite/20_util/tuple/tuple_element_t.cc: New.
24 2014-04-22 Release Manager
28 2014-04-10 Andreas Schwab <schwab@suse.de>
30 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
32 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
33 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
35 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
37 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
39 * testsuite/20_util/exchange/1.cc: Add missing return statements.
40 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
41 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
44 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
45 Jack Howarth <howarth@bromo.med.uc.edu>
48 * testsuite/30_threads/condition_variable/54185.cc: Skip for
51 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
53 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
55 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
57 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
58 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
59 * doc/xml/manual/concurrency_extensions.xml
60 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
61 * doc/html/*: Regenerate.
63 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
64 Jonathan Wakely <jwakely@redhat.com>
67 * include/std/iomanip (_Quoted_string operator>>): Do not clear
68 string if input is not quoted.
69 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
71 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
73 * libsupc++/eh_ptr.cc: Improve static_assert messages.
75 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
77 * testsuite/18_support/exception_ptr/60612-terminate.cc
78 (terminate, f): Wrap in _GLIBCXX_USE_C99.
79 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
81 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
83 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
85 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
86 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
88 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
90 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
92 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
93 Fix bad s/part/chapter/ substitutions.
94 * doc/xml/manual/io.xml (std.io): Likewise.
95 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
96 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
98 * doc/html/*: Regenerate.
100 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
103 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
104 compatible with __cxa_exception.
105 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
106 Fix typos in comments.
107 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
108 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
110 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
113 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
114 Use sizeof pointer type not the element type.
115 * testsuite/29_atomics/atomic/60658.cc: New.
117 2014-03-24 Jakub Jelinek <jakub@redhat.com>
119 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
120 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
121 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
122 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
123 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
124 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
125 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
126 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
127 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
128 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
131 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
133 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
135 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
137 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
138 to delegated constructor.
139 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
140 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
143 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
145 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
148 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
150 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
153 * include/debug/functions.h (_Is_contiguous_sequence): Define.
154 (__foreign_iterator): Accept additional iterator. Do not dispatch on
156 (__foreign_iterator_aux2): Likewise. Add overload for iterators
157 from different types of debug container. Use _Is_contiguous_sequence
158 instead of is_lvalue_reference.
159 (__foreign_iterator_aux3): Accept additional iterator. Avoid
160 dereferencing past-the-end iterator.
161 (__foreign_iterator_aux4): Use const value_type* instead of
162 potentially user-defined const_pointer type.
163 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
164 and pass end iterator to __gnu_debug::__foreign_iterator.
165 (__glibcxx_check_insert_range_after): Likewise.
166 (__glibcxx_check_max_load_factor): Fix comment.
167 * include/debug/vector (_Is_contiguous_sequence): Define partial
169 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
170 -std=gnu++11 option and unused header.
171 * testsuite/23_containers/vector/debug/60587.cc: New.
172 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
174 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
176 * crossconfig.m4: Support spu-*-elf* targets.
177 * configure: Regenerate.
179 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
182 * include/std/future (__future_base::_Task_state<>): Change
183 constructors to template functions using perfect forwarding.
184 (__create_task_state): Use decayed type as stored task.
185 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
186 * testsuite/30_threads/packaged_task/60564.cc: New.
188 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
190 * scripts/create_testsuite_files: Add testsuite/experimental in
191 the list of folders to search for tests.
193 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
195 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
197 2014-03-15 Tim Shen <timshen91@gmail.com>
199 * include/bits/regex.h: Add/modify comments.
200 * include/bits/regex_compiler.h: Likewise.
201 * include/bits/regex_executor.h: Likewise.
202 * include/bits/regex_executor.tcc: Likewise.
203 * include/bits/regex_scanner.h: Likewise.
205 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
208 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
209 _ZNSt12system_errorC* symbols which are not exported on any target.
211 2014-03-12 Roland McGrath <mcgrathr@google.com>
212 Mark Seaborn <mseaborn@google.com>
215 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
216 the address of a null pointer, not with a null pointer to pointer.
217 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
218 * testsuite/18_support/bad_exception/59392.cc: New file.
220 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
223 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
225 * include/debug/map (map::operator=(map&&)): Likewise.
226 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
227 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
228 * include/debug/set (set::operator=(set&&)): Likewise.
229 * include/debug/unordered_map
230 (unordered_map::operator=(unordered_map&&)): Likewise.
231 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
232 * include/debug/unordered_set
233 (unordered_set::operator=(unordered_set&&)): Likewise.
234 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
235 * include/debug/vector (vector::operator=(vector&&)): Likewise.
236 * testsuite/23_containers/forward_list/debug/60499.cc: New
237 * testsuite/23_containers/map/debug/60499.cc: New
238 * testsuite/23_containers/multimap/debug/60499.cc: New
239 * testsuite/23_containers/multiset/debug/60499.cc: New
240 * testsuite/23_containers/set/debug/60499.cc: New
241 * testsuite/23_containers/unordered_map/debug/60499.cc: New
242 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
243 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
244 * testsuite/23_containers/unordered_set/debug/60499.cc: New
245 * testsuite/23_containers/vector/debug/60499.cc: New
247 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
249 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
250 for filesystem and fundamentals TS work items.
252 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
255 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
256 Adjust dg-error directives.
258 2014-02-26 Tim Shen <timshen91@gmail.com>
260 * include/bits/regex.tcc (match_results<>::format,
261 regex_replace<>): Update __out after calling std::copy.
262 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
264 * testsuite/28_regex/match_results/format.cc: Likewise.
266 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
269 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
270 allocator_type&)): Remove redundant call to _M_initialize_map.
271 (deque::deque(const allocator_type&)): Initialize _Base with a
272 constructor that calls _M_initialize_map.
276 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
278 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
281 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
283 Rename testsuite directory shared_mutex to shared_timed_mutex
285 * testsuite/30_threads/shared_mutex: Moved to...
286 * testsuite/30_threads/shared_timed_mutex: ...here
288 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
290 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
291 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
292 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
293 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
294 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
295 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
296 * testsuite/30_threads/shared_lock/requirements/
297 explicit_instantiation.cc: Ditto.
298 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
299 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
300 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
301 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
302 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
303 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
304 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
305 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
306 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
307 * testsuite/30_threads/shared_mutex/requirements/
308 standard_layout.cc: Ditto.
309 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
310 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
311 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
312 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
313 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
315 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
317 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
318 execution on i?86-*-solaris2.9, remove comment.
319 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
321 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
323 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
324 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
325 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
327 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
329 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
330 not use varargs when argument could be non-POD.
331 (__alloctr_rebind_helper): Eliminate static const bool member by
332 using true_type and false_type.
333 (allocator_traits::__allocate_helper): Likewise.
334 (allocator_traits::__construct_helper): Likewise.
335 (allocator_traits::__destroy_helper): Likewise.
336 (allocator_traits::__maxsize_helper): Likewise.
337 (allocator_traits::__select_helper): Likewise.
338 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
339 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
340 Remove redundant condition.
341 * include/bits/stl_vector.h (vector::operator=(const vector&)):
343 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
344 indirection through __alloc_traits.
345 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
346 Eliminate static const bool members by using true_type and false_type.
347 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
348 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
349 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
351 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
354 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
355 (vector::_M_data_ptr): New overloaded functions to ensure empty
356 vectors do not dereference the pointer.
357 * testsuite/23_containers/vector/59829.cc: New.
358 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
359 Adjust dg-error line number.
360 * testsuite/23_containers/vector/requirements/dr438/
361 constructor_1_neg.cc: Likewise.
362 * testsuite/23_containers/vector/requirements/dr438/
363 constructor_2_neg.cc: Likewise.
364 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
368 * include/ext/array_allocator.h: Add deprecated attribute.
371 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
372 installation and use of python printers.
373 * doc/xml/manual/status_cxx2011.xml: Update.
374 * doc/html/*: Regenerate.
376 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
377 Kyle Lippincott <spectral@google.com>
380 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
381 constructor and grant friendship to weak_ptr.
382 (weak_ptr::lock()): Use new constructor.
383 * include/bits/shared_ptr_base.h
384 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
385 and define specializations.
386 (__shared_count): Add new non-throwing constructor.
387 (__shared_ptr): Add new non-throwing constructor and grant friendship
389 (__weak_ptr::lock()): Use new constructor.
390 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
391 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
393 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
396 * include/bits/shared_ptr_base.h
397 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
400 2014-01-27 Jason Merrill <jason@redhat.com>
405 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
406 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
407 (__cxa_allocate_exception): Don't set it here.
409 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
411 * include/bits/stl_map.h: Remove anachronistic comment.
412 * include/bits/stl_multimap.h: Add whitespace.
413 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
414 -std=gnu++11 instead of -std=c++11.
415 * testsuite/23_containers/map/operators/2.cc: Likewise.
416 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
417 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
418 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
420 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
421 * configure: Regenerate.
423 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
426 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
427 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
429 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
430 Peter A. Bigot <pab@pabigot.com>
433 * include/experimental/string_view
434 (copy(_CharT*, size_type, size_type) const): Correct throw string.
435 Correct copy start location.
437 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
438 Peter A. Bigot <pab@pabigot.com>
441 * include/experimental/string_view (operator[](size_type) const):
442 Fix one-off index error in debug check.
443 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
444 test basic_string_view at size().
445 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
447 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
448 Peter A. Bigot <pab@pabigot.com>
451 * include/experimental/string_view
452 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
453 * testsuite/experimental/string_view/operations/substr/char/1.cc:
454 Comment out catch of out_of_range; No terminating null
455 in basic_string_view. Check begin == end.
456 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
459 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
462 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
463 constructor to prevent it being implicitly defined as deleted, but
464 do not copy anything.
465 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
466 Define copy and move constructors similar to _Safe_sequence_base's.
467 * testsuite/23_containers/unordered_map/59548.cc: New.
469 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
470 Steve Ellcey <sellcey@mips.com>
472 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
474 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
475 * (configure, config.h.in): Regenerate.
476 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
478 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
480 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
481 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
484 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
485 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
487 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
489 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
490 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
491 functions to perform moving or copying of elements from rvalue tree.
492 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
493 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
494 * testsuite/23_containers/map/59872.cc: New.
495 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
497 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
499 * include/bits/stl_deque.h (_Deque_impl): Move comment.
502 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
503 Split into separate default constructor and constructor taking
505 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
506 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
508 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
509 * include/debug/list (list::list(const _Allocator&)): Likewise.
510 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
512 * include/debug/multimap.h
513 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
514 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
516 * include/debug/multiset.h
517 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
518 * include/debug/vector (vector::vector(const allocator_type&)):
520 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
521 * include/profile/list (list::list(const _Allocator&)): Likewise.
522 * include/profile/map.h
523 (map::map(const _Compare&, const _Allocator&)): Likewise.
524 * include/profile/multimap.h
525 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
526 * include/profile/set.h
527 (set::set(const _Compare&, const _Allocator&)): Likewise.
528 * include/profile/multiset.h
529 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
530 * include/profile/vector (vector::vector(const _Allocator&)):
532 * testsuite/23_containers/deque/58764.cc: New.
533 * testsuite/23_containers/list/58764.cc: New.
534 * testsuite/23_containers/map/58764.cc: New.
535 * testsuite/23_containers/multimap/58764.cc: New.
536 * testsuite/23_containers/set/58764.cc: New.
537 * testsuite/23_containers/multiset/58764.cc: New.
538 * testsuite/23_containers/vector/58764.cc: New.
539 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
540 Adjust dg-error line number.
541 * testsuite/23_containers/deque/requirements/dr438/
542 constructor_1_neg.cc: Likewise.
543 * testsuite/23_containers/deque/requirements/dr438/
544 constructor_2_neg.cc: Likewise.
545 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
547 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
549 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
551 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
553 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
555 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
557 * testsuite/23_containers/vector/requirements/dr438/
558 constructor_1_neg.cc: Likewise.
559 * testsuite/23_containers/vector/requirements/dr438/
560 constructor_2_neg.cc: Likewise.
561 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
564 PR libstdc++/58764 (again)
565 * include/bits/stl_list.h (list): Make default constructor's exception
566 specification conditional.
567 * include/bits/stl_vector.h (vector): Likewise.
568 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
569 to default constructor.
570 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
571 Adjust dg-error line number.
572 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
574 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
576 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
578 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
580 * testsuite/23_containers/vector/requirements/dr438/
581 constructor_1_neg.cc: Likewise.
582 * testsuite/23_containers/vector/requirements/dr438/
583 constructor_2_neg.cc: Likewise.
584 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
587 2014-01-21 Tim Shen <timshen91@gmail.com>
589 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
590 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
591 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
593 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
596 * include/bits/hashtable.h (__cache_default): Do not depend on
597 whether the hash function is DefaultConstructible or CopyAssignable.
598 (_Hashtable): Adjust static assertions.
599 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
600 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
601 dg-error line number.
602 * testsuite/23_containers/unordered_set/
603 not_default_constructible_hash_neg.cc: Remove.
605 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
607 * scripts/create_testsuite_files: Add testsuite/experimental in
608 the list of folders to search for tests.
609 * include/experimental/string_view
610 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
611 incompatible with constexpr qualifier.
612 (basic_string_view<>::front()): Likewise.
613 (basic_string_view<>::back()): Likewise.
614 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
615 Merge dg-options directives into one.
616 * testsuite/experimental/string_view/element_access/char/2.cc:
617 Likewise. Remove invalid experimental namespace scope on
620 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
623 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
624 friendship to _Local_iterator_base<..., false>.
625 (_Local_iterator_base): Give protected access to all existing members.
626 (_Local_iterator_base::_M_curr()): New public accessor.
627 (_Local_iterator_base::_M_get_bucket()): New public accessor.
628 (_Local_iterator_base<..., false>::_M_init()): New function to manage
629 the lifetime of the _Hash_code_base explicitly.
630 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
631 (_Local_iterator_base<..., false>): Define copy constructor and copy
632 assignment operator that use new functions to manage _Hash_code_base.
633 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
634 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
635 Use public API for _Local_iterator_base.
636 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
637 * include/debug/unordered_map (__debug::unordered_map::erase(),
638 __debug::unordered_multimap::erase()): Likewise.
639 * include/debug/unordered_set (__debug::unordered_set::erase(),
640 __debug::unordered_multiset::erase()): Likewise.
641 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
643 2014-01-19 Tim Shen <timshen91@gmail.com>
645 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
646 Fix parse error of multiple consecutive quantifiers like "a**".
647 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
649 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
651 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
653 * include/profile/set.h (set): Implement C++11 allocator-aware
654 container requirements.
655 * include/profile/map.h (map): Likewise.
656 * include/profile/multiset.h (multiset): Likewise.
657 * include/profile/multimap.h (multimap): Likewise.
658 * include/profile/set.h
659 (set::operator=(const set&)): Define as default in C++11 mode.
660 (set::operator=(set&&)): Likewise.
661 * include/profile/map.h
662 (map::operator=(const map&)): Likewise.
663 (map::operator=(map&&)): Likewise.
664 * include/profile/multiset.h
665 (multiset::operator=(const multiset&)): Likewise.
666 (multiset::operator=(multiset&&)): Likewise.
667 * include/profile/multimap.h
668 (multimap::operator=(const multimap&)): Likewise.
669 (multimap::operator=(multimap&&)): Likewise.
670 * include/profile/set.h (set::operator=(std::initializer_list<>)):
671 Rely on the same operator from normal mode.
672 * include/profile/map.h (map::operator=(std::initializer_list<>)):
674 * include/profile/multiset.h
675 (multiset::operator=(std::initializer_list<>)): Likewise.
676 * include/profile/multimap.h
677 (multimap::operator=(std::initializer_list<>)): Likewise.
678 * include/profile/set.h (set::swap(set&)): Add noexcept
680 * include/profile/map.h (map::swap(map&)): Likewise.
681 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
682 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
684 2014-01-17 Tim Shen <timshen91@gmail.com>
686 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
688 * include/bits/regex_automaton.h: Do not use std::set.
689 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
690 _BracketMatcher<>::_M_add_collating_element(),
691 _BracketMatcher<>::_M_add_equivalence_class(),
692 _BracketMatcher<>::_M_make_range()): Likewise.
693 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
695 * include/bits/regex_executor.h: Do not use std::queue.
696 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
697 _Executor<>::_M_dfs()): Likewise.
698 * include/std/regex: Remove <map>, <set> and <queue>.
700 2014-01-17 Tim Shen <timshen91@gmail.com>
702 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
703 basic_regex<>::assign()): Change __compile_nfa to accept
705 * include/bits/regex_compiler.h: Change _Compiler's template
706 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
707 * include/bits/regex_compiler.tcc: Likewise.
709 2014-01-17 Tim Shen <timshen91@gmail.com>
711 * include/bits/regex_compiler.h: Change _ScannerT into char-type
713 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
714 _ScannerBase from _Scanner; Change _Scanner's template argument from
715 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
717 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
718 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
719 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
721 * include/std/regex: Add <cstring> for using strchr.
723 2014-01-17 Tim Shen <timshen91@gmail.com>
725 * bits/regex_automaton.tcc: Indentation fix.
726 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
727 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
728 _BracketMatcher<>): Add bool option template parameters and
729 specializations to make matching more efficient and space saving.
730 * bits/regex_compiler.tcc: Likewise.
732 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
735 * include/bits/hashtable_policy.h: Fix some long lines.
736 * include/bits/hashtable.h (__hash_code_base_access): Define and
737 use it to check its _M_bucket_index noexcept qualification. Use
739 (__access_protected_ctor): ...this.
740 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
742 * testsuite/23_containers/unordered_set/
743 not_default_constructible_hash_neg.cc: Likewise.
745 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
747 * include/debug/set.h (set): Implement C++11 allocator-aware
748 container requirements.
749 * include/debug/map.h (map): Likewise.
750 * include/debug/multiset.h (multiset): Likewise.
751 * include/debug/multimap.h (multimap): Likewise.
752 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
753 fix implementation regarding management of safe iterators.
754 * include/debug/map.h (map::operator=(map&&)): Likewise.
755 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
756 * include/debug/multimap.h (multimap::operator=(multimap&&)):
758 * include/debug/set.h (set::operator=(std::initializer_list<>)):
759 Rely on the same operator from normal mode.
760 * include/debug/map.h (map::operator=(std::initializer_list<>)):
762 * include/debug/multiset.h
763 (multiset::operator=(std::initializer_list<>)): Likewise.
764 * include/debug/multimap.h
765 (multimap::operator=(std::initializer_list<>)): Likewise.
766 * include/debug/set.h (set::swap(set&)): Add noexcept
767 specification, add allocator equality check.
768 * include/debug/map.h (map::swap(map&)): Likewise.
769 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
770 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
772 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
775 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
776 and stylistic improvements.
777 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
778 and update for C++11.
779 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
782 * doc/xml/manual/backwards_compatibility.xml
783 (backwards.third.nocreate_noreplace): Correct and expand.
786 * doc/xml/manual/support.xml (std.support.types.null): Update links.
788 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
791 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
792 support for non-Movable types.
795 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
797 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
799 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
800 *this allocator instance when building temporary vector instance
801 so that *this allocator does not get moved.
802 * include/debug/safe_base.h
803 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
804 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
805 move constructor from _Safe_sequence_base.
806 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
807 safe iterators if the instance is moved.
808 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
809 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
810 check on a vector iterator.
811 * testsuite/23_containers/vector/allocator/move_assign.cc
813 (test03): New, test with a non-propagating allocator.
814 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
816 2014-01-07 Tim Shen <timshen91@gmail.com>
818 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
819 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
820 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
821 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
822 _BracketMatcher<>::_M_add_char(),
823 _BracketMatcher<>::_M_add_collating_element(),
824 _BracketMatcher<>::_M_add_equivalence_class(),
825 _BracketMatcher<>::_M_add_character_class(),
826 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
827 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
828 Fix _AnyMatcher behavior of POSIX style and move _M_flags
829 to template parameter; Add cache for _BracketMatcher. Adjust
830 declarations from here...
831 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
832 imbuing a regex will trigger a recompilation to rebuild the cache.
833 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
834 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
835 different template bool parameters.
836 * include/bits/regex_executor.h: Remove unnecessary declarations.
837 * include/std/regex: Adjust including orders.
838 * testsuite/28_regex/traits/char/user_defined.cc: New.
839 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
841 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
843 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
844 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
845 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
846 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
847 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
849 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
851 Update copyright years
853 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
855 * testsuite/18_support/new_handler.cc,
856 testsuite/18_support/terminate_handler.cc,
857 testsuite/18_support/unexpected_handler.cc: Use the standard form for
858 the copyright notice.
860 Copyright (C) 2014 Free Software Foundation, Inc.
862 Copying and distribution of this file, with or without modification,
863 are permitted in any medium without royalty provided the copyright
864 notice and this notice are preserved.