1 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
2 Jack Howarth <howarth@bromo.med.uc.edu>
5 * testsuite/30_threads/condition_variable/54185.cc: Skip for
8 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
10 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
12 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
14 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
15 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
16 * doc/xml/manual/concurrency_extensions.xml
17 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
18 * doc/html/*: Regenerate.
20 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
21 Jonathan Wakely <jwakely@redhat.com>
24 * include/std/iomanip (_Quoted_string operator>>): Do not clear
25 string if input is not quoted.
26 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
28 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
30 * libsupc++/eh_ptr.cc: Improve static_assert messages.
32 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
34 * testsuite/18_support/exception_ptr/60612-terminate.cc
35 (terminate, f): Wrap in _GLIBCXX_USE_C99.
36 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
38 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
40 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
42 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
43 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
45 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
47 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
49 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
50 Fix bad s/part/chapter/ substitutions.
51 * doc/xml/manual/io.xml (std.io): Likewise.
52 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
53 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
55 * doc/html/*: Regenerate.
57 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
60 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
61 compatible with __cxa_exception.
62 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
63 Fix typos in comments.
64 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
65 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
67 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
70 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
71 Use sizeof pointer type not the element type.
72 * testsuite/29_atomics/atomic/60658.cc: New.
74 2014-03-24 Jakub Jelinek <jakub@redhat.com>
76 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
77 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
78 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
79 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
80 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
81 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
82 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
83 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
84 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
85 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
88 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
90 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
92 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
94 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
95 to delegated constructor.
96 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
97 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
100 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
102 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
105 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
107 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
110 * include/debug/functions.h (_Is_contiguous_sequence): Define.
111 (__foreign_iterator): Accept additional iterator. Do not dispatch on
113 (__foreign_iterator_aux2): Likewise. Add overload for iterators
114 from different types of debug container. Use _Is_contiguous_sequence
115 instead of is_lvalue_reference.
116 (__foreign_iterator_aux3): Accept additional iterator. Avoid
117 dereferencing past-the-end iterator.
118 (__foreign_iterator_aux4): Use const value_type* instead of
119 potentially user-defined const_pointer type.
120 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
121 and pass end iterator to __gnu_debug::__foreign_iterator.
122 (__glibcxx_check_insert_range_after): Likewise.
123 (__glibcxx_check_max_load_factor): Fix comment.
124 * include/debug/vector (_Is_contiguous_sequence): Define partial
126 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
127 -std=gnu++11 option and unused header.
128 * testsuite/23_containers/vector/debug/60587.cc: New.
129 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
131 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
133 * crossconfig.m4: Support spu-*-elf* targets.
134 * configure: Regenerate.
136 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
139 * include/std/future (__future_base::_Task_state<>): Change
140 constructors to template functions using perfect forwarding.
141 (__create_task_state): Use decayed type as stored task.
142 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
143 * testsuite/30_threads/packaged_task/60564.cc: New.
145 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
147 * scripts/create_testsuite_files: Add testsuite/experimental in
148 the list of folders to search for tests.
150 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
152 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
154 2014-03-15 Tim Shen <timshen91@gmail.com>
156 * include/bits/regex.h: Add/modify comments.
157 * include/bits/regex_compiler.h: Likewise.
158 * include/bits/regex_executor.h: Likewise.
159 * include/bits/regex_executor.tcc: Likewise.
160 * include/bits/regex_scanner.h: Likewise.
162 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
165 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
166 _ZNSt12system_errorC* symbols which are not exported on any target.
168 2014-03-12 Roland McGrath <mcgrathr@google.com>
169 Mark Seaborn <mseaborn@google.com>
172 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
173 the address of a null pointer, not with a null pointer to pointer.
174 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
175 * testsuite/18_support/bad_exception/59392.cc: New file.
177 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
180 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
182 * include/debug/map (map::operator=(map&&)): Likewise.
183 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
184 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
185 * include/debug/set (set::operator=(set&&)): Likewise.
186 * include/debug/unordered_map
187 (unordered_map::operator=(unordered_map&&)): Likewise.
188 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
189 * include/debug/unordered_set
190 (unordered_set::operator=(unordered_set&&)): Likewise.
191 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
192 * include/debug/vector (vector::operator=(vector&&)): Likewise.
193 * testsuite/23_containers/forward_list/debug/60499.cc: New
194 * testsuite/23_containers/map/debug/60499.cc: New
195 * testsuite/23_containers/multimap/debug/60499.cc: New
196 * testsuite/23_containers/multiset/debug/60499.cc: New
197 * testsuite/23_containers/set/debug/60499.cc: New
198 * testsuite/23_containers/unordered_map/debug/60499.cc: New
199 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
200 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
201 * testsuite/23_containers/unordered_set/debug/60499.cc: New
202 * testsuite/23_containers/vector/debug/60499.cc: New
204 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
206 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
207 for filesystem and fundamentals TS work items.
209 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
212 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
213 Adjust dg-error directives.
215 2014-02-26 Tim Shen <timshen91@gmail.com>
217 * include/bits/regex.tcc (match_results<>::format,
218 regex_replace<>): Update __out after calling std::copy.
219 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
221 * testsuite/28_regex/match_results/format.cc: Likewise.
223 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
226 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
227 allocator_type&)): Remove redundant call to _M_initialize_map.
228 (deque::deque(const allocator_type&)): Initialize _Base with a
229 constructor that calls _M_initialize_map.
233 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
235 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
238 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
240 Rename testsuite directory shared_mutex to shared_timed_mutex
242 * testsuite/30_threads/shared_mutex: Moved to...
243 * testsuite/30_threads/shared_timed_mutex: ...here
245 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
247 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
248 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
249 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
250 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
251 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
252 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
253 * testsuite/30_threads/shared_lock/requirements/
254 explicit_instantiation.cc: Ditto.
255 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
256 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
257 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
258 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
259 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
260 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
261 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
262 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
263 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
264 * testsuite/30_threads/shared_mutex/requirements/
265 standard_layout.cc: Ditto.
266 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
267 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
268 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
269 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
270 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
272 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
274 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
275 execution on i?86-*-solaris2.9, remove comment.
276 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
278 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
280 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
281 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
282 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
284 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
286 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
287 not use varargs when argument could be non-POD.
288 (__alloctr_rebind_helper): Eliminate static const bool member by
289 using true_type and false_type.
290 (allocator_traits::__allocate_helper): Likewise.
291 (allocator_traits::__construct_helper): Likewise.
292 (allocator_traits::__destroy_helper): Likewise.
293 (allocator_traits::__maxsize_helper): Likewise.
294 (allocator_traits::__select_helper): Likewise.
295 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
296 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
297 Remove redundant condition.
298 * include/bits/stl_vector.h (vector::operator=(const vector&)):
300 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
301 indirection through __alloc_traits.
302 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
303 Eliminate static const bool members by using true_type and false_type.
304 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
305 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
306 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
308 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
311 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
312 (vector::_M_data_ptr): New overloaded functions to ensure empty
313 vectors do not dereference the pointer.
314 * testsuite/23_containers/vector/59829.cc: New.
315 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
316 Adjust dg-error line number.
317 * testsuite/23_containers/vector/requirements/dr438/
318 constructor_1_neg.cc: Likewise.
319 * testsuite/23_containers/vector/requirements/dr438/
320 constructor_2_neg.cc: Likewise.
321 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
325 * include/ext/array_allocator.h: Add deprecated attribute.
328 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
329 installation and use of python printers.
330 * doc/xml/manual/status_cxx2011.xml: Update.
331 * doc/html/*: Regenerate.
333 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
334 Kyle Lippincott <spectral@google.com>
337 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
338 constructor and grant friendship to weak_ptr.
339 (weak_ptr::lock()): Use new constructor.
340 * include/bits/shared_ptr_base.h
341 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
342 and define specializations.
343 (__shared_count): Add new non-throwing constructor.
344 (__shared_ptr): Add new non-throwing constructor and grant friendship
346 (__weak_ptr::lock()): Use new constructor.
347 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
348 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
350 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
353 * include/bits/shared_ptr_base.h
354 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
357 2014-01-27 Jason Merrill <jason@redhat.com>
362 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
363 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
364 (__cxa_allocate_exception): Don't set it here.
366 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
368 * include/bits/stl_map.h: Remove anachronistic comment.
369 * include/bits/stl_multimap.h: Add whitespace.
370 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
371 -std=gnu++11 instead of -std=c++11.
372 * testsuite/23_containers/map/operators/2.cc: Likewise.
373 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
374 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
375 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
377 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
378 * configure: Regenerate.
380 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
383 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
384 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
386 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
387 Peter A. Bigot <pab@pabigot.com>
390 * include/experimental/string_view
391 (copy(_CharT*, size_type, size_type) const): Correct throw string.
392 Correct copy start location.
394 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
395 Peter A. Bigot <pab@pabigot.com>
398 * include/experimental/string_view (operator[](size_type) const):
399 Fix one-off index error in debug check.
400 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
401 test basic_string_view at size().
402 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
404 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
405 Peter A. Bigot <pab@pabigot.com>
408 * include/experimental/string_view
409 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
410 * testsuite/experimental/string_view/operations/substr/char/1.cc:
411 Comment out catch of out_of_range; No terminating null
412 in basic_string_view. Check begin == end.
413 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
416 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
419 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
420 constructor to prevent it being implicitly defined as deleted, but
421 do not copy anything.
422 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
423 Define copy and move constructors similar to _Safe_sequence_base's.
424 * testsuite/23_containers/unordered_map/59548.cc: New.
426 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
427 Steve Ellcey <sellcey@mips.com>
429 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
431 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
432 * (configure, config.h.in): Regenerate.
433 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
435 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
437 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
438 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
441 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
442 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
444 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
446 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
447 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
448 functions to perform moving or copying of elements from rvalue tree.
449 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
450 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
451 * testsuite/23_containers/map/59872.cc: New.
452 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
454 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
456 * include/bits/stl_deque.h (_Deque_impl): Move comment.
459 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
460 Split into separate default constructor and constructor taking
462 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
463 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
465 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
466 * include/debug/list (list::list(const _Allocator&)): Likewise.
467 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
469 * include/debug/multimap.h
470 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
471 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
473 * include/debug/multiset.h
474 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
475 * include/debug/vector (vector::vector(const allocator_type&)):
477 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
478 * include/profile/list (list::list(const _Allocator&)): Likewise.
479 * include/profile/map.h
480 (map::map(const _Compare&, const _Allocator&)): Likewise.
481 * include/profile/multimap.h
482 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
483 * include/profile/set.h
484 (set::set(const _Compare&, const _Allocator&)): Likewise.
485 * include/profile/multiset.h
486 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
487 * include/profile/vector (vector::vector(const _Allocator&)):
489 * testsuite/23_containers/deque/58764.cc: New.
490 * testsuite/23_containers/list/58764.cc: New.
491 * testsuite/23_containers/map/58764.cc: New.
492 * testsuite/23_containers/multimap/58764.cc: New.
493 * testsuite/23_containers/set/58764.cc: New.
494 * testsuite/23_containers/multiset/58764.cc: New.
495 * testsuite/23_containers/vector/58764.cc: New.
496 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
497 Adjust dg-error line number.
498 * testsuite/23_containers/deque/requirements/dr438/
499 constructor_1_neg.cc: Likewise.
500 * testsuite/23_containers/deque/requirements/dr438/
501 constructor_2_neg.cc: Likewise.
502 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
504 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
506 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
508 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
510 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
512 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
514 * testsuite/23_containers/vector/requirements/dr438/
515 constructor_1_neg.cc: Likewise.
516 * testsuite/23_containers/vector/requirements/dr438/
517 constructor_2_neg.cc: Likewise.
518 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
521 PR libstdc++/58764 (again)
522 * include/bits/stl_list.h (list): Make default constructor's exception
523 specification conditional.
524 * include/bits/stl_vector.h (vector): Likewise.
525 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
526 to default constructor.
527 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
528 Adjust dg-error line number.
529 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
531 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
533 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
535 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
537 * testsuite/23_containers/vector/requirements/dr438/
538 constructor_1_neg.cc: Likewise.
539 * testsuite/23_containers/vector/requirements/dr438/
540 constructor_2_neg.cc: Likewise.
541 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
544 2014-01-21 Tim Shen <timshen91@gmail.com>
546 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
547 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
548 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
550 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
553 * include/bits/hashtable.h (__cache_default): Do not depend on
554 whether the hash function is DefaultConstructible or CopyAssignable.
555 (_Hashtable): Adjust static assertions.
556 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
557 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
558 dg-error line number.
559 * testsuite/23_containers/unordered_set/
560 not_default_constructible_hash_neg.cc: Remove.
562 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
564 * scripts/create_testsuite_files: Add testsuite/experimental in
565 the list of folders to search for tests.
566 * include/experimental/string_view
567 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
568 incompatible with constexpr qualifier.
569 (basic_string_view<>::front()): Likewise.
570 (basic_string_view<>::back()): Likewise.
571 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
572 Merge dg-options directives into one.
573 * testsuite/experimental/string_view/element_access/char/2.cc:
574 Likewise. Remove invalid experimental namespace scope on
577 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
580 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
581 friendship to _Local_iterator_base<..., false>.
582 (_Local_iterator_base): Give protected access to all existing members.
583 (_Local_iterator_base::_M_curr()): New public accessor.
584 (_Local_iterator_base::_M_get_bucket()): New public accessor.
585 (_Local_iterator_base<..., false>::_M_init()): New function to manage
586 the lifetime of the _Hash_code_base explicitly.
587 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
588 (_Local_iterator_base<..., false>): Define copy constructor and copy
589 assignment operator that use new functions to manage _Hash_code_base.
590 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
591 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
592 Use public API for _Local_iterator_base.
593 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
594 * include/debug/unordered_map (__debug::unordered_map::erase(),
595 __debug::unordered_multimap::erase()): Likewise.
596 * include/debug/unordered_set (__debug::unordered_set::erase(),
597 __debug::unordered_multiset::erase()): Likewise.
598 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
600 2014-01-19 Tim Shen <timshen91@gmail.com>
602 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
603 Fix parse error of multiple consecutive quantifiers like "a**".
604 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
606 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
608 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
610 * include/profile/set.h (set): Implement C++11 allocator-aware
611 container requirements.
612 * include/profile/map.h (map): Likewise.
613 * include/profile/multiset.h (multiset): Likewise.
614 * include/profile/multimap.h (multimap): Likewise.
615 * include/profile/set.h
616 (set::operator=(const set&)): Define as default in C++11 mode.
617 (set::operator=(set&&)): Likewise.
618 * include/profile/map.h
619 (map::operator=(const map&)): Likewise.
620 (map::operator=(map&&)): Likewise.
621 * include/profile/multiset.h
622 (multiset::operator=(const multiset&)): Likewise.
623 (multiset::operator=(multiset&&)): Likewise.
624 * include/profile/multimap.h
625 (multimap::operator=(const multimap&)): Likewise.
626 (multimap::operator=(multimap&&)): Likewise.
627 * include/profile/set.h (set::operator=(std::initializer_list<>)):
628 Rely on the same operator from normal mode.
629 * include/profile/map.h (map::operator=(std::initializer_list<>)):
631 * include/profile/multiset.h
632 (multiset::operator=(std::initializer_list<>)): Likewise.
633 * include/profile/multimap.h
634 (multimap::operator=(std::initializer_list<>)): Likewise.
635 * include/profile/set.h (set::swap(set&)): Add noexcept
637 * include/profile/map.h (map::swap(map&)): Likewise.
638 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
639 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
641 2014-01-17 Tim Shen <timshen91@gmail.com>
643 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
645 * include/bits/regex_automaton.h: Do not use std::set.
646 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
647 _BracketMatcher<>::_M_add_collating_element(),
648 _BracketMatcher<>::_M_add_equivalence_class(),
649 _BracketMatcher<>::_M_make_range()): Likewise.
650 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
652 * include/bits/regex_executor.h: Do not use std::queue.
653 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
654 _Executor<>::_M_dfs()): Likewise.
655 * include/std/regex: Remove <map>, <set> and <queue>.
657 2014-01-17 Tim Shen <timshen91@gmail.com>
659 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
660 basic_regex<>::assign()): Change __compile_nfa to accept
662 * include/bits/regex_compiler.h: Change _Compiler's template
663 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
664 * include/bits/regex_compiler.tcc: Likewise.
666 2014-01-17 Tim Shen <timshen91@gmail.com>
668 * include/bits/regex_compiler.h: Change _ScannerT into char-type
670 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
671 _ScannerBase from _Scanner; Change _Scanner's template argument from
672 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
674 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
675 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
676 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
678 * include/std/regex: Add <cstring> for using strchr.
680 2014-01-17 Tim Shen <timshen91@gmail.com>
682 * bits/regex_automaton.tcc: Indentation fix.
683 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
684 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
685 _BracketMatcher<>): Add bool option template parameters and
686 specializations to make matching more efficient and space saving.
687 * bits/regex_compiler.tcc: Likewise.
689 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
692 * include/bits/hashtable_policy.h: Fix some long lines.
693 * include/bits/hashtable.h (__hash_code_base_access): Define and
694 use it to check its _M_bucket_index noexcept qualification. Use
696 (__access_protected_ctor): ...this.
697 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
699 * testsuite/23_containers/unordered_set/
700 not_default_constructible_hash_neg.cc: Likewise.
702 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
704 * include/debug/set.h (set): Implement C++11 allocator-aware
705 container requirements.
706 * include/debug/map.h (map): Likewise.
707 * include/debug/multiset.h (multiset): Likewise.
708 * include/debug/multimap.h (multimap): Likewise.
709 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
710 fix implementation regarding management of safe iterators.
711 * include/debug/map.h (map::operator=(map&&)): Likewise.
712 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
713 * include/debug/multimap.h (multimap::operator=(multimap&&)):
715 * include/debug/set.h (set::operator=(std::initializer_list<>)):
716 Rely on the same operator from normal mode.
717 * include/debug/map.h (map::operator=(std::initializer_list<>)):
719 * include/debug/multiset.h
720 (multiset::operator=(std::initializer_list<>)): Likewise.
721 * include/debug/multimap.h
722 (multimap::operator=(std::initializer_list<>)): Likewise.
723 * include/debug/set.h (set::swap(set&)): Add noexcept
724 specification, add allocator equality check.
725 * include/debug/map.h (map::swap(map&)): Likewise.
726 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
727 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
729 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
732 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
733 and stylistic improvements.
734 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
735 and update for C++11.
736 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
739 * doc/xml/manual/backwards_compatibility.xml
740 (backwards.third.nocreate_noreplace): Correct and expand.
743 * doc/xml/manual/support.xml (std.support.types.null): Update links.
745 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
748 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
749 support for non-Movable types.
752 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
754 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
756 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
757 *this allocator instance when building temporary vector instance
758 so that *this allocator does not get moved.
759 * include/debug/safe_base.h
760 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
761 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
762 move constructor from _Safe_sequence_base.
763 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
764 safe iterators if the instance is moved.
765 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
766 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
767 check on a vector iterator.
768 * testsuite/23_containers/vector/allocator/move_assign.cc
770 (test03): New, test with a non-propagating allocator.
771 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
773 2014-01-07 Tim Shen <timshen91@gmail.com>
775 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
776 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
777 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
778 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
779 _BracketMatcher<>::_M_add_char(),
780 _BracketMatcher<>::_M_add_collating_element(),
781 _BracketMatcher<>::_M_add_equivalence_class(),
782 _BracketMatcher<>::_M_add_character_class(),
783 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
784 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
785 Fix _AnyMatcher behavior of POSIX style and move _M_flags
786 to template parameter; Add cache for _BracketMatcher. Adjust
787 declarations from here...
788 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
789 imbuing a regex will trigger a recompilation to rebuild the cache.
790 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
791 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
792 different template bool parameters.
793 * include/bits/regex_executor.h: Remove unnecessary declarations.
794 * include/std/regex: Adjust including orders.
795 * testsuite/28_regex/traits/char/user_defined.cc: New.
796 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
798 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
800 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
801 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
802 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
803 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
804 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
806 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
808 Update copyright years
810 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
812 * testsuite/18_support/new_handler.cc,
813 testsuite/18_support/terminate_handler.cc,
814 testsuite/18_support/unexpected_handler.cc: Use the standard form for
815 the copyright notice.
817 Copyright (C) 2014 Free Software Foundation, Inc.
819 Copying and distribution of this file, with or without modification,
820 are permitted in any medium without royalty provided the copyright
821 notice and this notice are preserved.