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