Daily bump.
[official-gcc.git] / libstdc++-v3 / ChangeLog
bloba607facab6689624c16274cf1fdec17eb1dacc6f
1 2015-06-05  Tim Shen  <timshen@google.com>
3         PR libstdc++/66359
4         Backport from mainline
5         2014-11-13  Tim Shen  <timshen@google.com>
7         PR libstdc++/63775
8         * include/bits/regex_compiler.h (_Compiler<>::_M_expression_term,
9         _BracketMatcher<>::_M_make_range): Throw regex_erorr on invalid range
10         like [z-a]. Change _M_expression_term interface.
11         * include/bits/regex_compiler.tcc (
12         _Compiler<>::_M_insert_bracket_matcher,
13         _Compiler<>::_M_expression_term): Rewrite bracket expression parsing.
14         * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
15         Add testcases and move file out of extended.
17 2015-06-04  Renlin Li  <renlin.li@arm.com>
19         Backported from mainline
20         2015-06-02  Renlin Li  <renlin.li@arm.com>
22         * testsuite/27_io/fpos/14775.cc: Add _GLIBCXX_HAVE_LIMIT_FSIZE check.
24 2015-05-28  Jonathan Wakely  <jwakely@redhat.com>
26         PR libstdc++/65352
27         * include/profile/array (array::data): Use __array_traits::_S_ptr.
28         * include/debug/array (array::data): Likewise.
29         * include/std/array (__array_traits::_S_ptr): New function.
30         (array::data): Use _S_ptr to avoid creating invalid reference.
31         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
32         dg-error line numbers.
33         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
34         likewise.
36         Backport from mainline
37         2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
39         PR libstdc++/64658
40         * include/std/atomic (atomic_init): Define.
41         * testsuite/29_atomics/atomic/64658.cc: New.
43         Backport from mainline
44         2014-12-22  Jonathan Wakely  <jwakely@redhat.com>
46         PR libstdc++/37522
47         * include/bits/basic_string.h (stod, stof, stoi, stol, stold, stoll,
48         stoul, stoull, to_string): Only use _GLIBCXX_HAVE_BROKEN_VSWPRINTF
49         to guard definition of to_wstring.
51 2015-05-22  David Edelsohn  <dje.gcc@gmail.com>
53         Backport from mainline
54         2015-05-21  David Edelsohn  <dje.gcc@gmail.com>
56         PR target/66224
57         * config/cpu/powerpc/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER):
58         Don't use isync. Use lwsync if available.
60 2015-05-07  Renlin Li  <renlin.li@arm.com>
62         Backported from mainline
63         2015-04-22  Renlin Li  <renlin.li@arm.com>
65         * testsuite/lib/dg-options.exp (dg-require-thread-fence): New.
66         * testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New.
67         * testsuite/29_atomics/atomic_flag/clear/1.cc: Use it.
68         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
69         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.
71 2015-04-11  Jonathan Wakely  <jwakely@redhat.com>
73         * testsuite/30_threads/shared_lock/cons/5.cc: Remove
74         dg-require-gthreads-timed.
75         * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
76         * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
77         * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
79         Backport from mainline
80         2015-04-10  Jonathan Wakely  <jwakely@redhat.com>
82         * include/std/shared_mutex (shared_timed_mutex): Add comments to
83         explain the logic in the non-pthread_rwlock_t version.
84         (_Mutex): Remove redundant type.
85         (_M_n_readers): Rename to _S_max_readers.
86         (_M_write_entered, _M_readers): New convenience functions.
87         (lock, lock_shared, try_lock_shared, unlock_shared): Use convenience
88         functions. Use predicates with condition variables. Simplify bitwise
89         operations.
90         (try_lock_for, try_shared_lock_for): Convert duration to time_point
91         and call try_lock_until or try_shared_lock_until respectively.
92         (try_lock_until, try_shared_lock_until): Wait on the condition
93         variables until the specified time passes.
94         (unlock): Add Debug Mode assertion.
95         (unlock_shared): Add Debug Mode assertion.
96         * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: New.
98         Backport from mainline
99         2015-03-27  Jonathan Wakely  <jwakely@redhat.com>
101         PR libstdc++/65499
102         * include/std/chrono: Add using-directive for literals to std::chrono.
103         * testsuite/20_util/duration/literals/65499.cc: New.
105         Backport from mainline
106         2015-03-26  Jonathan Wakely  <jwakely@redhat.com>
108         PR libstdc++/58038
109         * include/std/thread (this_thread::sleep_for): Check for negative
110         durations.
111         (this_thread::sleep_until): Check for times in the past.
112         * testsuite/30_threads/this_thread/58038.cc: New.
113         * testsuite/30_threads/this_thread/60421.cc: New.
115 2015-03-25  Jonathan Wakely  <jwakely@redhat.com>
117         Backport from mainline
118         2015-03-02  Jonathan Wakely  <jwakely@redhat.com>
119         PR libstdc++/65279
120         * include/std/scoped_allocator (__inner_type_impl,
121         scoped_allocator_adaptor): Add defaulted copy assignment and move
122         assignment operators.
123         * testsuite/20_util/scoped_allocator/65279.cc: New.
125 2015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
127         PR libstdc++/65543
128         * include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert
129         thinko in r150387.
130         * include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&):
131         Likewise.
132         * testsuite/27_io/rvalue_streams-2.cc: New.
134 2015-02-03  Tim Shen  <timshen@google.com>
136         PR libstdc++/64680
137         Backported from mainline
138         2015-01-22  Tim Shen  <timshen@google.com>
140         * include/bits/regex.h (basic_regex<>::basic_regex,
141         basic_regex<>::operator=, basic_regex<>::imbue): Conform to the
142         standard interface.
143         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase.
145 2015-02-03  Tim Shen  <timshen@google.com>
147         PR libstdc++/64649
148         Backported from mainline
149         2015-01-22  Tim Shen  <timshen@google.com>
151         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
152         regex_traits<>::lookup_classname): Correctly narrow input chars.
153         * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
155 2015-01-19  Tim Shen  <timshen@google.com>
157         PR libstdc++/64649
158         Backported from mainline
159         2015-01-19  Tim Shen  <timshen@google.com>
161         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
162         regex_traits<>::lookup_classname): Support forward iterators.
163         * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
164         * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
166 2015-01-19  Tim Shen  <timshen@google.com>
168         PR libstdc++/64584
169         PR libstdc++/64585
170         * include/bits/regex.h (basic_regex<>::basic_regex,
171         basic_regex<>::assign, basic_regex<>::imbue,
172         basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
173         imbuing basic_regex; Make assign() transactional against exception.
174         * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
175         * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
177 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
179         PR libstdc++/64646
180         * include/bits/stl_algo.h (__is_permutation): Also test for reaching
181         end of the second range.
182         * testsuite/25_algorithms/is_permutation/64646.cc: New.
184 2015-01-09  Jonathan Wakely  <jwakely@redhat.com>
186         PR libstdc++/64476
187         * include/bits/stl_uninitialized.h (uninitialized_copy): Fix
188         is_assignable arguments.
189         * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
190         New.
192 2015-01-09  Jonathan Wakely  <jwakely@redhat.com>
194         PR libstdc++/60966
195         * include/std/future (packaged_task::operator()): Increment the
196         reference count on the shared state until the function returns.
198 2015-01-09  Tim Shen  <timshen@google.com>
200         PR libstdc++/64239
201         Backported form mainline
202         2015-01-09  Tim Shen  <timshen@google.com>
204         * include/bits/regex.h (match_results<>::swap): Use std::swap
205         instead of swap.
206         * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
207         Likewise.
208         * testsuite/28_regex/match_results/swap.cc: New testcase.
210 2014-12-17  Tim Shen  <timshen@google.com>
212         PR libstdc++/64302
213         PR libstdc++/64303
214         Backported form mainline
215         2014-12-17  Tim Shen  <timshen@google.com>
217         * include/bits/regex.h (match_results::cbegin, match_results::cend,
218         regex_token_iterator::regex_token_iterator,
219         regex_token_iterator::_M_normalize_result): Fix match_results cbegin
220         and cend and regex_token_iterator::_M_result invariant.
221         * include/bits/regex.tcc: Fix regex_token_iterator::_M_result invariant.
222         * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Testcase.
224 2014-12-13  Tim Shen  <timshen@google.com>
226         PR libstdc++/64239
227         * include/bits/regex.h (match_results<>::match_results,
228         match_results<>::operator=, match_results<>::position,
229         match_results<>::swap): Fix ctor/assign/swap.
230         * include/bits/regex.tcc: (__regex_algo_impl<>,
231         regex_iterator<>::operator++): Set match_results::_M_begin as
232         "start position".
233         * testsuite/28_regex/iterators/regex_iterator/char/
234         string_position_01.cc: Test cases.
236 2014-12-09  Jonathan Wakely  <jwakely@redhat.com>
238         PR libstdc++/64203
239         * include/std/shared_mutex: Fix preprocessor conditions.
240         * testsuite/experimental/feat-cxx14.cc: Check conditions.
242 2014-12-06  Jonathan Wakely  <jwakely@redhat.com>
244         PR libstdc++/63840
245         * include/std/functional (function::function(const function&)): Set
246         _M_manager after operations that might throw.
247         * include/tr1/functional (function::function(const function&),
248         function::function(_Functor, _Useless)): Likewise.
249         * testsuite/20_util/function/63840.cc: New.
250         * testsuite/tr1/3_function_objects/function/63840.cc: New.
252         PR libstdc++/61947
253         * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
254         disambiguate unary constructors.
255         (_Tuple_impl): Pass allocator_arg_t arguments.
256         * testsuite/20_util/tuple/61947.cc: New.
257         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
259 2014-12-06  Tim Shen  <timshen@google.com>
261         PR libstdc++/64140
262         Backport form mainline
263         2014-12-04  Tim Shen  <timshen@google.com>
265         * include/bits/regex.tcc (regex_iterator<>::operator++): Update
266         prefix.matched after modifying prefix.first.
267         * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: New
268         testcase.
270 2014-12-02  Matthias Klose  <doko@ubuntu.com>
272         PR libstdc++/64103
273         Backport from mainline
274         2014-11-03  Paolo Carlini  <paolo.carlini@oracle.com>
276         * include/parallel/algo.h: Do not use default arguments in function
277         template redeclarations (definitions).
279         2014-11-04  Jonathan Wakely  <jwakely@redhat.com>
281         * include/parallel/numeric.h: Do not use default arguments in function
282         template redeclarations (definitions).
284 2014-11-28  Tim Shen  <timshen@google.com>
286         PR libstdc++/63497
287         * include/bits/regex_executor.tcc (_Executor::_M_dfs,
288         _Executor::_M_word_boundary): Avoid dereferecing _M_current at _M_end
289         or other invalid position.
291 2014-11-13  Thomas Preud'homme  <thomas.preudhomme@arm.com>
293         Backport from mainline
294         2014-09-10  Tony Wang  <tony.wang@arm.com>
296         PR target/56846
297         * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
298         Return with CONTINUE_UNWINDING when the state pattern
299         contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
301 2014-10-30  David Edelsohn  <dje.gcc@gmail.com>
303         Backported from mainline.
304         2014-10-30  David Edelsohn  <dje.gcc@gmail.com>
306         * configure.host (aix4.3+, 5+): Do not use -G in link command.
308 2014-10-30  Release Manager
310         * GCC 4.9.2 released.
312 2014-10-18  François Dumont  <fdumont@gcc.gnu.org>
313             Jonathan Wakely  <jwakely@redhat.com>
315         PR libstdc++/63500
316         * include/debug/functions.h (__foreign_iterator_aux2): Do not check for
317         foreign iterators if input iterators returns rvalue reference.
318         * testsuite/23_containers/vector/63500.cc: New.
320 2014-10-14  Kai Tietz  <ktietz@redhat.com>
322         PR libstdc++/57440
323         * config/os/mingw32/os_defines.h (_GTHREAD_USE_MUTEX_INIT_FUNC):
324         Define to avoid leak.
325         * config/os/mingw32-w64/os_defines.h: Likewise.
327 2014-10-08  Edward Smith-Rowland  <3dw4rd@verizon.net>
329         Implement SD-6: SG10 Feature Test Recommendations
330         * include/bits/basic_string.h: Add __cpp_lib feature test macro.
331         * include/bits/stl_algobase.h: Ditto.
332         * include/bits/stl_function.h: Ditto.
333         * include/bits/unique_ptr.h: Ditto.
334         * include/std/chrono: Ditto.
335         * include/std/complex: Ditto.
336         * include/std/iomanip: Ditto.
337         * include/std/shared_mutex: Ditto.
338         * include/std/tuple: Ditto.
339         * include/std/type_traits: Ditto.
340         * include/std/utility: Ditto.
341         * testsuite/experimental/feat-cxx14.cc: New.
342         * testsuite/experimental/feat-lib-fund.cc: New.
343         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
344         * testsuite/20_util/duration/literals/range.cc: Adjust.
345         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
346         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
347         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
348         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
349         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
350         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
351         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
352         Adjust.
354 2014-10-08  Jonathan Wakely  <jwakely@redhat.com>
356         * include/bits/regex.h (regex_token_iterator::_M_end_of_seq): Add
357         const qualifier.
359 2014-10-05  François Dumont  <fdumont@gcc.gnu.org>
361         PR libstdc++/63456
362         * include/bits/hashtable.h (_M_uses_single_bucket(__bucket_type*)): Test
363         the parameter.
364         * testsuite/23_containers/unordered_set/63456.cc: New.
366 2014-10-03  Jonathan Wakely  <jwakely@redhat.com>
368         PR libstdc++/63449
369         * doc/xml/manual/containers.xml: Remove outdated section. Update
370         std::list notes.
371         * doc/html/*: Regenerate.
373 2014-10-03  Edward Smith-Rowland  <3dw4rd@verizon.net>
375         * include/std/type_traits: Add is_final<> type trait for C++14.
376         * testsuite/util/testsuite_tr1.h: Add FinalType.
377         * testsuite/20_util/is_final/requirements/
378         explicit_instantiation.cc: New.
379         * testsuite/20_util/is_final/requirements/typedefs.cc: New.
380         * testsuite/20_util/is_final/value.cc: New.
381         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
382         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
383         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
385 2014-10-02  Tim Shen  <timshen@google.com>
387         PR libstdc++/63199
388         * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
389         basic_regex::swap): Fix dangling _M_traits reference problem.
390         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
391         New test case.
393 2014-10-01  Jonathan Wakely  <jwakely@redhat.com>
395         * doc/xml/manual/status_cxx2011.xml: Corrections.
396         * doc/html/manual/status.html: Regenerate.
398 2014-10-01  Jonathan Wakely  <jwakely@redhat.com>
400         * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
402 2014-10-01  Jonathan Wakely  <jwakely@redhat.com>
404         * include/bits/stl_queue.h: Include missing header.
405         * include/bits/stl_stack.h: Likewise.
406         * testsuite/23_containers/priority_queue/requirements/
407         uses_allocator.cc: New.
408         * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
409         * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
411 2014-10-01  Jonathan Wakely  <jwakely@redhat.com>
413         * include/std/mutex (try_lock): Do not swallow exceptions.
414         * testsuite/30_threads/try_lock/4.cc: Fix test.
416 2014-10-01  Jonathan Wakely  <jwakely@redhat.com>
418         PR libstdc++/59603
419         * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
420         * testsuite/25_algorithms/random_shuffle/59603.cc: New.
422 2014-09-11  Jonathan Wakely  <jwakely@redhat.com>
424         PR libstdc++/63219
425         * include/bits/regex.h (match_results::format): Remove stray template
426         parameter.
428 2014-08-26  Jonathan Wakely  <jwakely@redhat.com>
430         Backported from mainline
431         2014-08-12  Jonathan Wakely  <jwakely@redhat.com>
433         * include/bits/basic_string.h (getline): Qualify call to prevent ADL
434         and add overloads for rvalue streams.
435         * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
436         New.
437         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
438         New.
440 2014-08-26  Jonathan Wakely  <jwakely@redhat.com>
442         PR libstdc++/62264
443         * include/experimental/string_view: Fix inconsistent exception specs.
445 2014-08-09  François Dumont  <fdumont@gcc.gnu.org>
447         PR libstdc++/61667
448         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
449         _M_need_rehash to initialize the rehash policy and check if a rehash is
450         needed.
451         * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
453 2014-08-04  Jonathan Wakely  <jwakely@redhat.com>
455         Backported from mainline
456         2014-07-29  Jonathan Wakely  <jwakely@redhat.com>
458         PR libstdc++/61946
459         * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
460         const allocator_type&)): Pass non-const allocator to
461         _S_new_RopeFunction.
462         * testsuite/ext/rope/61946.cc: New.
464 2014-08-04  Zifei Tong  <zifeitong@gmail.com>
466         * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
467         _GLIBCXX_ prefix to macro.
469 2014-08-04  Samuel Bronson  <naesten@gmail.com>
471         Backport r212453 from trunk
472         2014-07-11  Samuel Bronson  <naesten@gmail.com>
473                     Matthias Klose  <doko@ubuntu.com>
475         PR libstdc++/58962
476         * python/libstdcxx/v6/printers.py: Port to Python 2+3
477         (imap): New compat function.
478         (izip): Likewise.
479         (Iterator): New mixin to allow writing iterators in Python 3 style
480         regardless of which version we're running on.
481         [Python3] (long) New compat alias for "int".
482         * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
484         Backport r210625 from trunk
485         2014-05-19  Jonathan Wakely  <jwakely@redhat.com>
487         * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
489 2014-08-04  Jonathan Wakely  <jwakely@redhat.com>
491         Backported from mainline
492         2014-06-10  Jonathan Wakely  <jwakely@redhat.com>
494         PR libstdc++/61390
495         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
496         (bin_search_tree_traits): Do not redeclare template-parameters.
497         * testsuite/util/testsuite_iterators.h (test_container): Likewise.
499         Backported from mainline
500         2014-06-02  Jonathan Wakely  <jwakely@redhat.com>
502         * include/std/condition_variable (condition_variable_any::_Unlock): Do
503         not swallow __forced_unwind.
504         * include/std/future (__future_base::_Task_setter): Likewise.
505         (__future_base::_Async_state_impl): Turn __forced_unwind into broken
506         promise and rethrow.
507         * include/std/mutex (try_lock): Likewise.
508         * testsuite/30_threads/async/forced_unwind.cc: New.
509         * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
511         Backported from mainline
512         2014-06-01  Jonathan Wakely  <jwakely@redhat.com>
514         PR libstdc++/61374
515         * include/experimental/string_view (operator basic_string): Correct
516         order of arguments.
517         (to_string): Replace with member function.
518         Add inline specifiers. Remove unused header. Remove _S_empty_rep and
519         allow _M_str to be null.
520         * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
521         default constructor semantics.
522         * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
523         * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
524         copyright dates. Remove unused header.
525         * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
526         Likewise.
527         * testsuite/experimental/string_view/operations/data/char/1.cc:
528         Fix copyright dates. Adjust to new default constructor semantics.
529         * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
530         Likewise.
531         * testsuite/experimental/string_view/operations/to_string/1.cc: New.
533         Backported from mainline
534         2014-04-15  Jonathan Wakely  <jwakely@redhat.com>
536         * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
537         const to constexpr member functions.
539 2014-07-29  Ed Smith-Rowland  <3dw4rd@verizon.net>
541         PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
542         * include/bits/random.h (_Adaptor): static_assert for non floating-point
543         result type.
544         * include/bits/random.tcc (generate_canonical): Ditto.
545         * include/ext/random.tcc (hypergeometric_distribution::operator()):
546         Use double as a rng result type.
547         * testsuite/26_numerics/random/pr60037-neg.cc: New.
548         * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
550 2014-07-16  Release Manager
552         * GCC 4.9.1 released.
554 2014-06-23  Jonathan Wakely  <jwakely@redhat.com>
556         PR libstdc++/61532
557         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
558         apply the signed specifier to wchar_t.
559         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
560         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Do not
561         apply the unsigned specifier to wchar_t.
562         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
563         Likewise.
565 2014-06-13  Jonathan Wakely  <jwakely@redhat.com>
567         Backport from mainline
568         PR libstdc++/60326
569         * include/std/type_traits (__make_unsigned, __make_signed): Define
570         specializations for wchar_t, char16_t and char32_t.
571         * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
572         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
573         test for make_unsigned<volatile wchar_t>.
574         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
575         Likewise.
576         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
577         line number.
578         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
579         Likewise.
580         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
581         Likewise.
583         Backport from mainline
584         PR libstdc++/61269
585         * include/std/type_traits: Move include outside namespace std.
586         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
587         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
588         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
589         Likewise.
591         * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
592         (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
593         * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
595 2014-06-07  Ed Smith-Rowland  <3dw4rd@verizon.net>
597         Backport from mainline
598         DR 2344 - std::quoted doesn't respect padding
599         * include/std/iomanip: Allow for padding in quoted inserters.
600         * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
601         * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
603 2014-06-03  Jonathan Wakely  <jwakely@redhat.com>
605         * include/bits/regex_executor.tcc (_Executor<>::_M_main): Move instead
606         of copying.
608 2014-06-03  Jonathan Wakely  <jwakely@redhat.com>
610         Backport from mainline
611         2014-04-15  Jonathan Wakely  <jwakely@redhat.com>
613         PR libstdc++/60734
614         * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
616         Backport from mainline
617         2014-04-24  Tim Shen  <timshen91@gmail.com>
619         * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
620         Do _M_alt before _M_next.
621         * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
623         Backport from mainline
624         2014-05-20  Tim Shen  <timshen91@gmail.com>
626         PR libstdc++/61227
627         * include/bits/regex_compiler.h
628         (_BracketMatcher<>::_M_add_character_class): Add negative character
629         class support.
630         * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
631         Likewise.
632         * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
633         Add more testcases.
635 2014-05-29  Jonathan Wakely  <jwakely@redhat.com>
637         * include/tr2/bool_set: Use UTF-8 for accented characters.
638         * scripts/run_doxygen: Handle Doxygen 1.8.x change.
640 2014-05-27  Jonathan Wakely  <jwakely@redhat.com>
642         PR libstdc++/61329
643         * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
644         inline specifier.
645         (_State_base::_M_dot): Likewise.
647 2014-05-23  François Dumont  <fdumont@gcc.gnu.org>
649         PR libstdc++/61143
650         * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
651         usable state.
652         * testsuite/23_containers/unordered_set/61143.cc: New.
653         * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
655 2014-05-17  Jonathan Wakely  <jwakely@redhat.com>
657         PR libstdc++/60966
658         * include/std/future (__future_base::_State_baseV2::_M_set_result):
659         Signal condition variable after call_once returns.
660         (__future_base::_State_baseV2::_M_do_set): Do not signal here.
661         (promise::set_value, promise::set_exception): Increment the reference
662         count on the shared state until the function returns.
663         * testsuite/30_threads/promise/60966.cc: New.
665 2014-05-08  Joshua Gay  <jgay@gnu.org>
667         PR libstdc++/61117
668         * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
669         source" with "free software".
670         * doc/html/faq.html: Likewise.
672 2014-05-08  Jonathan Wakely  <jwakely@redhat.com>
674         * include/std/iostream: Fix URL in comment.
675         * src/c++98/ios_init.cc: Fix path in comment.
677 2014-05-07  Jonathan Wakely  <jwakely@redhat.com>
679         PR libstdc++/61023
680         * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
681         comparison function.
682         * testsuite/23_containers/set/cons/61023.cc: New.
684         PR libstdc++/61086
685         * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
686         Remove.
687         * include/bits/stl_vector.h (vector::insert, vector::erase): Use
688         arithmetic to obtain a mutable iterator from const_iterator.
689         * include/bits/vector.tcc (vector::insert): Likewise.
690         * include/debug/vector (vector::erase): Likewise.
691         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
692         Adjust dg-error line number.
693         * testsuite/23_containers/vector/requirements/dr438/
694         constructor_1_neg.cc: Likewise.
695         * testsuite/23_containers/vector/requirements/dr438/
696         constructor_2_neg.cc: Likewise.
697         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
698         Likewise.
700 2014-05-06  Jonathan Wakely  <jwakely@redhat.com>
702         Backport from mainline
703         2014-04-15  Jonathan Wakely  <jwakely@redhat.com>
705         PR libstdc++/60594
706         * include/std/functional (function::_Callable): Exclude own type
707         from the callable checks.
708         * testsuite/20_util/function/60594.cc: New.
710 2014-05-02  Jonathan Wakely  <jwakely@redhat.com>
712         PR libstdc++/59476
713         * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
714         function to handle both C++03 and C++11 _Rb_tree_node implementations.
715         (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
716         * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
717         refer to...
718         * testsuite/libstdc++-prettyprinters/simple11.cc: New.
720         PR libstdc++/61036
721         * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
722         Check the correct type in the static assertion.
723         * testsuite/20_util/shared_ptr/cons/61036.cc: New.
725 2014-04-27  Lars Gullik Bjønnes  <larsbj@gullik.org>
727         PR libstdc++/60710
728         * include/experimental/optional (operator!=): Implement in terms of
729         operator==.
730         * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
731         * testsuite/experimental/optional/relops/2.cc: Likewise.
732         * testsuite/experimental/optional/relops/3.cc: Likewise.
733         * testsuite/experimental/optional/relops/4.cc: Likewise.
734         * testsuite/experimental/optional/relops/5.cc: Likewise.
735         * testsuite/experimental/optional/relops/6.cc: Likewise.
737 2014-04-27  Jonathan Wakely  <jwakely@redhat.com>
739         PR libstdc++/60497
740         * include/std/tuple (get): Qualify calls to prevent ADL.
741         * testsuite/20_util/tuple/60497.cc: New.
743         * include/std/tuple (tuple_element_t): Define.
744         * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
745         test.
746         * testsuite/20_util/tuple/tuple_element_t.cc: New.
748 2014-04-22  Release Manager
750         * GCC 4.9.0 released.
752 2014-04-10  Andreas Schwab  <schwab@suse.de>
754         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
755         symbols.
756         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
757         * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
759         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
761 2014-04-07  Jonathan Wakely  <jwakely@redhat.com>
763         * testsuite/20_util/exchange/1.cc: Add missing return statements.
764         * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
765         * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
766         specifications.
768 2014-04-02  Dominique d'Humieres  <dominiq@lps.ens.fr>
769             Jack Howarth <howarth@bromo.med.uc.edu>
771         PR target/54407
772         * testsuite/30_threads/condition_variable/54185.cc: Skip for
773         darwin < 11.
775 2014-04-01  Jonathan Wakely  <jwakely@redhat.com>
777         * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
778         Update link.
779         * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
780         Fix broken links.
781         * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
782         * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
783         * doc/xml/manual/concurrency_extensions.xml
784         (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
785         * doc/html/*: Regenerate.
787 2014-03-31  Lars Gullik Bjønnes  <larsbj@gullik.org>
788             Jonathan Wakely  <jwakely@redhat.com>
790         PR libstdc++/60270
791         * include/std/iomanip (_Quoted_string operator>>): Do not clear
792         string if input is not quoted.
793         * testsuite/27_io/manipulators/standard/char/60270.cc: New.
795 2014-03-31  Jonathan Wakely  <jwakely@redhat.com>
797         * libsupc++/eh_ptr.cc: Improve static_assert messages.
799 2014-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
801         * testsuite/18_support/exception_ptr/60612-terminate.cc
802         (terminate, f): Wrap in _GLIBCXX_USE_C99.
803         * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
805 2014-03-27  Jonathan Wakely  <jwakely@redhat.com>
807         * doc/xml/manual/io.xml (std.io.objects): Additional markup.
809         * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
810         * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
811         Likewise.
812         * doc/xml/manual/backwards_compatibility.xml (backwards.third):
813         Likewise.
814         * doc/xml/manual/test.xml (test.organization.layout): Likewise.
816         * doc/xml/manual/containers.xml (associative.bitset.size_variable):
817         Fix bad s/part/chapter/ substitutions.
818         * doc/xml/manual/io.xml (std.io): Likewise.
819         * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
820         * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
822         * doc/html/*: Regenerate.
824 2014-03-27  Jonathan Wakely  <jwakely@redhat.com>
826         PR libstdc++/60612
827         * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
828         compatible with __cxa_exception.
829         * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
830         Fix typos in comments.
831         * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
832         * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
834 2014-03-25  Jonathan Wakely  <jwakely@redhat.com>
836         PR libstdc++/60658
837         * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
838         Use sizeof pointer type not the element type.
839         * testsuite/29_atomics/atomic/60658.cc: New.
841 2014-03-24  Jakub Jelinek  <jakub@redhat.com>
843         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
844         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
845         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
846         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
847         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
848         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
849         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
850         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
851         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
852         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
853         entries.
855 2014-03-23  John David Anglin  <danglin@gcc.gnu.org>
857         * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
859 2014-03-23  François Dumont  <fdumont@gcc.gnu.org>
861         * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
862         to delegated constructor.
863         (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
864         (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
865         Likewise.
866         (_Hashtable(
867         initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
869 2014-03-23  John David Anglin  <danglin@gcc.gnu.org>
871         PR libstdc++/60623
872         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
874 2014-03-21  Jonathan Wakely  <jwakely@redhat.com>
876         PR libstdc++/60587
877         * include/debug/functions.h (_Is_contiguous_sequence): Define.
878         (__foreign_iterator): Accept additional iterator. Do not dispatch on
879         iterator category.
880         (__foreign_iterator_aux2): Likewise. Add overload for iterators
881         from different types of debug container. Use _Is_contiguous_sequence
882         instead of is_lvalue_reference.
883         (__foreign_iterator_aux3): Accept additional iterator. Avoid
884         dereferencing past-the-end iterator.
885         (__foreign_iterator_aux4): Use const value_type* instead of
886         potentially user-defined const_pointer type.
887         * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
888         and pass end iterator to __gnu_debug::__foreign_iterator.
889         (__glibcxx_check_insert_range_after): Likewise.
890         (__glibcxx_check_max_load_factor): Fix comment.
891         * include/debug/vector (_Is_contiguous_sequence): Define partial
892         specializations.
893         * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
894         -std=gnu++11 option and unused header.
895         * testsuite/23_containers/vector/debug/60587.cc: New.
896         * testsuite/23_containers/vector/debug/60587_neg.cc: New.
898 2014-03-20  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
900         * crossconfig.m4: Support spu-*-elf* targets.
901         * configure: Regenerate.
903 2014-03-18  Jonathan Wakely  <jwakely@redhat.com>
905         PR libstdc++/60564
906         * include/std/future (__future_base::_Task_state<>): Change
907         constructors to template functions using perfect forwarding.
908         (__create_task_state): Use decayed type as stored task.
909         (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
910         * testsuite/30_threads/packaged_task/60564.cc: New.
912 2014-03-16  François Dumont  <fdumont@gcc.gnu.org>
914         * scripts/create_testsuite_files: Add testsuite/experimental in
915         the list of folders to search for tests.
917 2014-03-15  Andreas Schwab  <schwab@linux-m68k.org>
919         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
921 2014-03-15  Tim Shen  <timshen91@gmail.com>
923         * include/bits/regex.h: Add/modify comments.
924         * include/bits/regex_compiler.h: Likewise.
925         * include/bits/regex_executor.h: Likewise.
926         * include/bits/regex_executor.tcc: Likewise.
927         * include/bits/regex_scanner.h: Likewise.
929 2014-03-14  Jonathan Wakely  <jwakely@redhat.com>
931         PR ipa/58721
932         * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
933         _ZNSt12system_errorC* symbols which are not exported on any target.
935 2014-03-12  Roland McGrath  <mcgrathr@google.com>
936             Mark Seaborn  <mseaborn@google.com>
938         PR libstdc++/59392
939         * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
940         the address of a null pointer, not with a null pointer to pointer.
941         Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
942         * testsuite/18_support/bad_exception/59392.cc: New file.
944 2014-03-11  Jonathan Wakely  <jwakely@redhat.com>
946         PR libstdc++/60499
947         * include/debug/forward_list (forward_list::operator=(forward_list&&)):
948         Uglify name.
949         * include/debug/map (map::operator=(map&&)): Likewise.
950         * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
951         * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
952         * include/debug/set (set::operator=(set&&)): Likewise.
953         * include/debug/unordered_map
954         (unordered_map::operator=(unordered_map&&)): Likewise.
955         (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
956         * include/debug/unordered_set
957         (unordered_set::operator=(unordered_set&&)): Likewise.
958         (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
959         * include/debug/vector (vector::operator=(vector&&)): Likewise.
960         * testsuite/23_containers/forward_list/debug/60499.cc: New
961         * testsuite/23_containers/map/debug/60499.cc: New
962         * testsuite/23_containers/multimap/debug/60499.cc: New
963         * testsuite/23_containers/multiset/debug/60499.cc: New
964         * testsuite/23_containers/set/debug/60499.cc: New
965         * testsuite/23_containers/unordered_map/debug/60499.cc: New
966         * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
967         * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
968         * testsuite/23_containers/unordered_set/debug/60499.cc: New
969         * testsuite/23_containers/vector/debug/60499.cc: New
971 2014-03-05  Ed Smith-Rowland  <3dw4rd@verizon.net>
973         * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
974         for filesystem and fundamentals TS work items.
976 2014-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
978         PR c++/60376
979         * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
980         Adjust dg-error directives.
982 2014-02-26  Tim Shen  <timshen91@gmail.com>
984         * include/bits/regex.tcc (match_results<>::format,
985         regex_replace<>): Update __out after calling std::copy.
986         * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
987         Add testcase.
988         * testsuite/28_regex/match_results/format.cc: Likewise.
990 2014-02-22  Marc Glisse  <marc.glisse@inria.fr>
992         PR libstdc++/60308
993         * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
994         allocator_type&)): Remove redundant call to _M_initialize_map.
995         (deque::deque(const allocator_type&)): Initialize _Base with a
996         constructor that calls _M_initialize_map.
998         Partial revert:
1000         2013-09-20  Marc Glisse  <marc.glisse@inria.fr>
1001         PR libstdc++/58338
1002         (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1003         _M_initialize_map.
1005 2014-02-21  Ed Smith-Rowland  <3dw4rd@verizon.net>
1007         Rename testsuite directory shared_mutex to shared_timed_mutex
1008         for consistency.
1009         * testsuite/30_threads/shared_mutex: Moved to...
1010         * testsuite/30_threads/shared_timed_mutex: ...here
1012 2014-02-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
1014         Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1015         * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1016         * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1017         * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1018         * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1019         * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1020         * testsuite/30_threads/shared_lock/requirements/
1021         explicit_instantiation.cc: Ditto.
1022         * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1023         * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1024         * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1025         * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1026         * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1027         * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1028         * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1029         * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1030         * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1031         * testsuite/30_threads/shared_mutex/requirements/
1032         standard_layout.cc: Ditto.
1033         * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1034         * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1035         * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1036         * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1037         * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1039 2014-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1041         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1042         execution on i?86-*-solaris2.9, remove comment.
1043         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1045 2014-02-09  Richard Sandiford  <rdsandiford@googlemail.com>
1047         * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1048         * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1049         * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1051 2014-01-29  Jonathan Wakely  <jwakely@redhat.com>
1053         * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1054         not use varargs when argument could be non-POD.
1055         (__alloctr_rebind_helper): Eliminate static const bool member by
1056         using true_type and false_type.
1057         (allocator_traits::__allocate_helper): Likewise.
1058         (allocator_traits::__construct_helper): Likewise.
1059         (allocator_traits::__destroy_helper): Likewise.
1060         (allocator_traits::__maxsize_helper): Likewise.
1061         (allocator_traits::__select_helper): Likewise.
1062         * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1063         * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1064         Remove redundant condition.
1065         * include/bits/stl_vector.h (vector::operator=(const vector&)):
1066         Likewise.
1067         (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1068         indirection through __alloc_traits.
1069         * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1070         Eliminate static const bool members by using true_type and false_type.
1071         (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1072         * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1073         * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1074         New.
1075         * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1077         PR libstdc++/59829
1078         * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1079         (vector::_M_data_ptr): New overloaded functions to ensure empty
1080         vectors do not dereference the pointer.
1081         * testsuite/23_containers/vector/59829.cc: New.
1082         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1083         Adjust dg-error line number.
1084         * testsuite/23_containers/vector/requirements/dr438/
1085         constructor_1_neg.cc: Likewise.
1086         * testsuite/23_containers/vector/requirements/dr438/
1087         constructor_2_neg.cc: Likewise.
1088         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1089         Likewise.
1091         PR libstdc++/21609
1092         * include/ext/array_allocator.h: Add deprecated attribute.
1094         PR libstdc++/57226
1095         * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1096         installation and use of python printers.
1097         * doc/xml/manual/status_cxx2011.xml: Update.
1098         * doc/html/*: Regenerate.
1100 2014-01-28  Jonathan Wakely  <jwakely@redhat.com>
1101             Kyle Lippincott  <spectral@google.com>
1103         PR libstdc++/59656
1104         * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1105         constructor and grant friendship to weak_ptr.
1106         (weak_ptr::lock()): Use new constructor.
1107         * include/bits/shared_ptr_base.h
1108         (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1109         and define specializations.
1110         (__shared_count): Add new non-throwing constructor.
1111         (__shared_ptr): Add new non-throwing constructor and grant friendship
1112         to __weak_ptr.
1113         (__weak_ptr::lock()): Use new constructor.
1114         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1115         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1117 2014-01-27  Jonathan Wakely  <jwakely@redhat.com>
1119         PR libstdc++/59215
1120         * include/bits/shared_ptr_base.h
1121         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1122         load.
1124 2014-01-27  Jason Merrill  <jason@redhat.com>
1126         Core DR 475
1127         PR c++/41174
1128         PR c++/59224
1129         * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1130         * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1131         (__cxa_allocate_exception): Don't set it here.
1133 2014-01-26  Jonathan Wakely  <jwakely@redhat.com>
1135         * include/bits/stl_map.h: Remove anachronistic comment.
1136         * include/bits/stl_multimap.h: Add whitespace.
1137         * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1138         -std=gnu++11 instead of -std=c++11.
1139         * testsuite/23_containers/map/operators/2.cc: Likewise.
1140         * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1141         * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1142         * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1144         * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1145         * configure: Regenerate.
1147 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
1149         PR libstdc++/59531
1150         * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1151         * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1153 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
1154             Peter A. Bigot <pab@pabigot.com>
1156         PR libstdc++/59531
1157         * include/experimental/string_view
1158         (copy(_CharT*, size_type, size_type) const): Correct throw string.
1159         Correct copy start location.
1161 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
1162             Peter A. Bigot <pab@pabigot.com>
1164         PR libstdc++/59530
1165         * include/experimental/string_view (operator[](size_type) const):
1166         Fix one-off index error in debug check.
1167         * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1168         test basic_string_view at size().
1169         * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1171 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
1172             Peter A. Bigot <pab@pabigot.com>
1174         PR libstdc++/59529
1175         * include/experimental/string_view
1176         (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1177         * testsuite/experimental/string_view/operations/substr/char/1.cc:
1178         Comment out catch of out_of_range; No terminating null
1179         in basic_string_view.  Check begin == end.
1180         * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1181         Ditto.
1183 2014-01-24  Jonathan Wakely  <jwakely@redhat.com>
1185         PR libstdc++/59548
1186         * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1187         constructor to prevent it being implicitly defined as deleted, but
1188         do not copy anything.
1189         * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1190         Define copy and move constructors similar to _Safe_sequence_base's.
1191         * testsuite/23_containers/unordered_map/59548.cc: New.
1193 2014-01-23  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
1194             Steve Ellcey  <sellcey@mips.com>
1196         * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1197         function.
1198         * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1199         * (configure, config.h.in): Regenerate.
1200         * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1202 2014-01-23  Jonathan Wakely  <jwakely@redhat.com>
1204         * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1205         * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1207         PR libstdc++/59872
1208         * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1209         * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1210         Likewise.
1211         * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1212         Likewise.
1213         * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1214         * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1215         functions to perform moving or copying of elements from rvalue tree.
1216         (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1217         (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1218         * testsuite/23_containers/map/59872.cc: New.
1219         * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1221 2014-01-22  Jonathan Wakely  <jwakely@redhat.com>
1223         * include/bits/stl_deque.h (_Deque_impl): Move comment.
1225         PR libstdc++/58764
1226         * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1227         Split into separate default constructor and constructor taking
1228         allocator.
1229         * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1230         * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1231         Likewise.
1232         * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1233         * include/debug/list (list::list(const _Allocator&)): Likewise.
1234         * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1235         Likewise.
1236         * include/debug/multimap.h
1237         (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1238         * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1239         Likewise.
1240         * include/debug/multiset.h
1241         (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1242         * include/debug/vector (vector::vector(const allocator_type&)):
1243         Likewise.
1244         * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1245         * include/profile/list (list::list(const _Allocator&)): Likewise.
1246         * include/profile/map.h
1247         (map::map(const _Compare&, const _Allocator&)): Likewise.
1248         * include/profile/multimap.h
1249         (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1250         * include/profile/set.h
1251         (set::set(const _Compare&, const _Allocator&)): Likewise.
1252         * include/profile/multiset.h
1253         (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1254         * include/profile/vector (vector::vector(const _Allocator&)):
1255         Likewise.
1256         * testsuite/23_containers/deque/58764.cc: New.
1257         * testsuite/23_containers/list/58764.cc: New.
1258         * testsuite/23_containers/map/58764.cc: New.
1259         * testsuite/23_containers/multimap/58764.cc: New.
1260         * testsuite/23_containers/set/58764.cc: New.
1261         * testsuite/23_containers/multiset/58764.cc: New.
1262         * testsuite/23_containers/vector/58764.cc: New.
1263         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1264         Adjust dg-error line number.
1265         * testsuite/23_containers/deque/requirements/dr438/
1266         constructor_1_neg.cc: Likewise.
1267         * testsuite/23_containers/deque/requirements/dr438/
1268         constructor_2_neg.cc: Likewise.
1269         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1270         Likewise.
1271         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1272         Likewise.
1273         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1274         Likewise.
1275         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1276         Likewise.
1277         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1278         Likewise.
1279         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1280         Likewise.
1281         * testsuite/23_containers/vector/requirements/dr438/
1282         constructor_1_neg.cc: Likewise.
1283         * testsuite/23_containers/vector/requirements/dr438/
1284         constructor_2_neg.cc: Likewise.
1285         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1286         Likewise.
1288         PR libstdc++/58764 (again)
1289         * include/bits/stl_list.h (list): Make default constructor's exception
1290         specification conditional.
1291         * include/bits/stl_vector.h (vector): Likewise.
1292         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1293         to default constructor.
1294         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1295         Adjust dg-error line number.
1296         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1297         Likewise.
1298         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1299         Likewise.
1300         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1301         Likewise.
1302         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1303         Likewise.
1304         * testsuite/23_containers/vector/requirements/dr438/
1305         constructor_1_neg.cc: Likewise.
1306         * testsuite/23_containers/vector/requirements/dr438/
1307         constructor_2_neg.cc: Likewise.
1308         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1309         Likewise.
1311 2014-01-21  Tim Shen  <timshen91@gmail.com>
1313         * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1314         * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1315         * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1317 2014-01-21  Jonathan Wakely  <jwakely@redhat.com>
1319         PR libstdc++/56267
1320         * include/bits/hashtable.h (__cache_default): Do not depend on
1321         whether the hash function is DefaultConstructible or CopyAssignable.
1322         (_Hashtable): Adjust static assertions.
1323         * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1324         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1325         dg-error line number.
1326         * testsuite/23_containers/unordered_set/
1327         not_default_constructible_hash_neg.cc: Remove.
1329 2014-01-20  François Dumont  <fdumont@gcc.gnu.org>
1331         * scripts/create_testsuite_files: Add testsuite/experimental in
1332         the list of folders to search for tests.
1333         * include/experimental/string_view
1334         (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1335         incompatible with constexpr qualifier.
1336         (basic_string_view<>::front()): Likewise.
1337         (basic_string_view<>::back()): Likewise.
1338         * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1339         Merge dg-options directives into one.
1340         * testsuite/experimental/string_view/element_access/char/2.cc:
1341         Likewise. Remove invalid experimental namespace scope on
1342         string_view_type.
1344 2014-01-20  Jonathan Wakely  <jwakely@redhat.com>
1346         PR libstdc++/56267
1347         * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1348         friendship to _Local_iterator_base<..., false>.
1349         (_Local_iterator_base): Give protected access to all existing members.
1350         (_Local_iterator_base::_M_curr()): New public accessor.
1351         (_Local_iterator_base::_M_get_bucket()): New public accessor.
1352         (_Local_iterator_base<..., false>::_M_init()): New function to manage
1353         the lifetime of the _Hash_code_base explicitly.
1354         (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
1355         (_Local_iterator_base<..., false>): Define copy constructor and copy
1356         assignment operator that use new functions to manage _Hash_code_base.
1357         (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
1358         operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
1359         Use public API for _Local_iterator_base.
1360         * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
1361         * include/debug/unordered_map (__debug::unordered_map::erase(),
1362         __debug::unordered_multimap::erase()): Likewise.
1363         * include/debug/unordered_set (__debug::unordered_set::erase(),
1364         __debug::unordered_multiset::erase()): Likewise.
1365         * testsuite/23_containers/unordered_set/56267-2.cc: New test.
1367 2014-01-19  Tim Shen  <timshen91@gmail.com>
1369         * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
1370         Fix parse error of multiple consecutive quantifiers like "a**".
1371         * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
1372         Likewise.
1373         * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
1375 2014-01-17  François Dumont  <fdumont@gcc.gnu.org>
1377         * include/profile/set.h (set): Implement C++11 allocator-aware
1378         container requirements.
1379         * include/profile/map.h (map): Likewise.
1380         * include/profile/multiset.h (multiset): Likewise.
1381         * include/profile/multimap.h (multimap): Likewise.
1382         * include/profile/set.h
1383         (set::operator=(const set&)): Define as default in C++11 mode.
1384         (set::operator=(set&&)): Likewise.
1385         * include/profile/map.h
1386         (map::operator=(const map&)): Likewise.
1387         (map::operator=(map&&)): Likewise.
1388         * include/profile/multiset.h
1389         (multiset::operator=(const multiset&)): Likewise.
1390         (multiset::operator=(multiset&&)): Likewise.
1391         * include/profile/multimap.h
1392         (multimap::operator=(const multimap&)): Likewise.
1393         (multimap::operator=(multimap&&)): Likewise.
1394         * include/profile/set.h (set::operator=(std::initializer_list<>)):
1395         Rely on the same operator from normal mode.
1396         * include/profile/map.h (map::operator=(std::initializer_list<>)):
1397         Likewise.
1398         * include/profile/multiset.h
1399         (multiset::operator=(std::initializer_list<>)): Likewise.
1400         * include/profile/multimap.h
1401         (multimap::operator=(std::initializer_list<>)): Likewise.
1402         * include/profile/set.h (set::swap(set&)): Add noexcept
1403         specification.
1404         * include/profile/map.h (map::swap(map&)): Likewise.
1405         * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
1406         * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
1408 2014-01-17  Tim Shen  <timshen91@gmail.com>
1410         * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
1411         use std::map.
1412         * include/bits/regex_automaton.h: Do not use std::set.
1413         * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
1414         _BracketMatcher<>::_M_add_collating_element(),
1415         _BracketMatcher<>::_M_add_equivalence_class(),
1416         _BracketMatcher<>::_M_make_range()): Likewise.
1417         * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
1418         Likewise.
1419         * include/bits/regex_executor.h: Do not use std::queue.
1420         * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
1421         _Executor<>::_M_dfs()): Likewise.
1422         * include/std/regex: Remove <map>, <set> and <queue>.
1424 2014-01-17  Tim Shen  <timshen91@gmail.com>
1426         * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
1427         basic_regex<>::assign()): Change __compile_nfa to accept
1428         const _CharT* only.
1429         * include/bits/regex_compiler.h: Change _Compiler's template
1430         argument from <_FwdIter, _TraitsT> to <_TraitsT>.
1431         * include/bits/regex_compiler.tcc: Likewise.
1433 2014-01-17  Tim Shen  <timshen91@gmail.com>
1435         * include/bits/regex_compiler.h: Change _ScannerT into char-type
1436         templated.
1437         * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
1438         _ScannerBase from _Scanner; Change _Scanner's template argument from
1439         _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
1440         instead.
1441         * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
1442         _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
1443         _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
1444         Likewise.
1445         * include/std/regex: Add <cstring> for using strchr.
1447 2014-01-17  Tim Shen  <timshen91@gmail.com>
1449         * bits/regex_automaton.tcc: Indentation fix.
1450         * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
1451         _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
1452         _BracketMatcher<>): Add bool option template parameters and
1453         specializations to make matching more efficient and space saving.
1454         * bits/regex_compiler.tcc: Likewise.
1456 2014-01-15  François Dumont  <fdumont@gcc.gnu.org>
1458         PR libstdc++/59712
1459         * include/bits/hashtable_policy.h: Fix some long lines.
1460         * include/bits/hashtable.h (__hash_code_base_access): Define and
1461         use it to check its _M_bucket_index noexcept qualification. Use
1462         also in place of...
1463         (__access_protected_ctor): ...this.
1464         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1465         Adapt line number.
1466         * testsuite/23_containers/unordered_set/
1467         not_default_constructible_hash_neg.cc: Likewise.
1469 2014-01-13  François Dumont  <fdumont@gcc.gnu.org>
1471         * include/debug/set.h (set): Implement C++11 allocator-aware
1472         container requirements.
1473         * include/debug/map.h (map): Likewise.
1474         * include/debug/multiset.h (multiset): Likewise.
1475         * include/debug/multimap.h (multimap): Likewise.
1476         * include/debug/set.h (set::operator=(set&&)): Add noexcept and
1477         fix implementation regarding management of safe iterators.
1478         * include/debug/map.h (map::operator=(map&&)): Likewise.
1479         * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
1480         * include/debug/multimap.h (multimap::operator=(multimap&&)):
1481         Likewise.
1482         * include/debug/set.h (set::operator=(std::initializer_list<>)):
1483         Rely on the same operator from normal mode.
1484         * include/debug/map.h (map::operator=(std::initializer_list<>)):
1485         Likewise.
1486         * include/debug/multiset.h
1487         (multiset::operator=(std::initializer_list<>)): Likewise.
1488         * include/debug/multimap.h
1489         (multimap::operator=(std::initializer_list<>)): Likewise.
1490         * include/debug/set.h (set::swap(set&)): Add noexcept
1491         specification, add allocator equality check.
1492         * include/debug/map.h (map::swap(map&)): Likewise.
1493         * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
1494         * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
1496 2014-01-10  Jonathan Wakely  <jwakely@redhat.com>
1498         PR libstdc++/59698
1499         * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
1500         and stylistic improvements.
1501         * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
1502         and update for C++11.
1503         * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
1505         PR libstdc++/59687
1506         * doc/xml/manual/backwards_compatibility.xml
1507         (backwards.third.nocreate_noreplace): Correct and expand.
1509         PR libstdc++/59699
1510         * doc/xml/manual/support.xml (std.support.types.null): Update links.
1512 2014-01-09  Jonathan Wakely  <jwakely@redhat.com>
1514         PR libstdc++/59738
1515         * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
1516         support for non-Movable types.
1518         PR libstdc++/59680
1519         * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
1521 2014-01-08  François Dumont  <fdumont@gcc.gnu.org>
1523         * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
1524         *this allocator instance when building temporary vector instance
1525         so that *this allocator does not get moved.
1526         * include/debug/safe_base.h
1527         (_Safe_sequence_base(_Safe_sequence_base&&)): New.
1528         * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
1529         move constructor from _Safe_sequence_base.
1530         (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
1531         safe iterators if the instance is moved.
1532         (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
1533         * testsuite/23_containers/vector/allocator/move.cc (test01): Add
1534         check on a vector iterator.
1535         * testsuite/23_containers/vector/allocator/move_assign.cc
1536         (test02): Likewise.
1537         (test03): New, test with a non-propagating allocator.
1538         * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
1540 2014-01-07  Tim Shen  <timshen91@gmail.com>
1542         * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
1543         _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
1544         _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
1545         _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
1546         _BracketMatcher<>::_M_add_char(),
1547         _BracketMatcher<>::_M_add_collating_element(),
1548         _BracketMatcher<>::_M_add_equivalence_class(),
1549         _BracketMatcher<>::_M_add_character_class(),
1550         _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
1551         _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
1552         Fix _AnyMatcher behavior of POSIX style and move _M_flags
1553         to template parameter; Add cache for _BracketMatcher. Adjust
1554         declarations from here...
1555         * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
1556         imbuing a regex will trigger a recompilation to rebuild the cache.
1557         * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
1558         _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
1559         different template bool parameters.
1560         * include/bits/regex_executor.h: Remove unnecessary declarations.
1561         * include/std/regex: Adjust including orders.
1562         * testsuite/28_regex/traits/char/user_defined.cc: New.
1563         * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
1565 2014-01-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1567         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1568         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1569         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1570         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1571         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1573 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
1575         Update copyright years
1577 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
1579         * testsuite/18_support/new_handler.cc,
1580         testsuite/18_support/terminate_handler.cc,
1581         testsuite/18_support/unexpected_handler.cc: Use the standard form for
1582         the copyright notice.
1584 Copyright (C) 2014 Free Software Foundation, Inc.
1586 Copying and distribution of this file, with or without modification,
1587 are permitted in any medium without royalty provided the copyright
1588 notice and this notice are preserved.