* go-gcc.cc: #include "langhooks.h".
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob6cc371c5d9d1e88280a73ec9c6b7994c454d45e6
1 2014-04-27  Tim Shen  <timshen91@gmail.com>
3         * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
4         Add _S_opcode_repeat support to distingush a loop from
5         _S_opcode_alternative.
6         * include/bits/regex_automaton.tcc (_State_base::_M_print,
7         _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
8         _StateSeq<>::_M_clone): Likewise.
9         * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
10         Likewise.
11         * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
12         * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
13         Uglify local variable __i.
14         * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
15         Use size_t instead of int to compare with vector::size().
17 2014-04-27  Tim Shen  <timshen91@gmail.com>
19         * include/bits/regex_executor.h: Add _M_rep_count to track how
20         many times this repeat node are visited.
21         * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
22         _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
23         infinite loop.
25 2014-04-27  Tim Shen  <timshen91@gmail.com>
27         * include/bits/regex.tcc (__regex_algo_impl<>): Remove
28         _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
29         _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
30         * include/bits/regex_automaton.h: Remove quantifier counting variable.
31         * include/bits/regex_automaton.tcc (_State_base::_M_dot):
32         Adjust debug NFA dump.
34 2014-04-25  Lars Gullik Bjønnes  <larsbj@gullik.org>
36         PR libstdc++/60710
37         * include/experimental/optional (operator!=): Implement in terms of
38         operator==.
39         * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
40         * testsuite/experimental/optional/relops/2.cc: Likewise.
41         * testsuite/experimental/optional/relops/3.cc: Likewise.
42         * testsuite/experimental/optional/relops/4.cc: Likewise.
43         * testsuite/experimental/optional/relops/5.cc: Likewise.
44         * testsuite/experimental/optional/relops/6.cc: Likewise.
46 2014-04-25  Jonathan Wakely  <jwakely@redhat.com>
48         PR libstdc++/60958
49         * include/tr1/regex (regex_traits::isctype): Comment out broken code.
50         * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
51         comment.
53 2014-04-25  Marc Glisse  <marc.glisse@inria.fr>
55         * testsuite/util/testsuite_abi.cc (check_version): Update for
56         CXXABI_1.3.9.
58 2014-04-24  Tim Shen  <timshen91@gmail.com>
60         * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
61         Do _M_alt before _M_next.
62         * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
64 2014-04-24  Marc Glisse  <marc.glisse@inria.fr>
66         PR libstdc++/43622
67         * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
68         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
69         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
71 2014-04-24  Andreas Schwab  <schwab@suse.de>
73         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
74         new CXXABI_1.3.9 symbols.
76 2014-04-23  Andreas Schwab  <schwab@linux-m68k.org>
78         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
79         (CXXABI_1.3.9): New version.
81 2014-04-22  Marc Glisse  <marc.glisse@inria.fr>
83         PR libstdc++/43622
84         * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
85         * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
86         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
88 2014-04-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
90         * configure.host: Remove solaris2.9 handling.
91         Change os_include_dir to os/solaris/solaris2.10.
92         * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
93         * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
94         * configure: Regenerate.
95         * config/abi/post/solaris2.9: Remove.
96         * config/os/solaris/solaris2.9: Rename to ...
97         * config/os/solaris/solaris2.10: ... this.
98         * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
99         Remove.
101         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
102         Remove Solaris 9 reference.
103         * doc/html/manual/configure.html: Regenerate.
105         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
106         Remove *-*-solaris2.9 xfail.
107         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
108         Likewise.
110         * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
111         xfail.
113 2014-04-16  Jonathan Wakely  <jwakely@redhat.com>
115         * include/std/functional (__is_location_invariant): Use __or_ helper.
117 2014-04-15  Jonathan Wakely  <jwakely@redhat.com>
119         PR libstdc++/60734
120         * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
122         PR libstdc++/60695
123         * include/std/atomic (atomic<_Tp>): Add static assertion.
124         * testsuite/29_atomics/atomic/60695.cc: New.
126         PR libstdc++/60594
127         * include/std/functional (function::_Callable): Exclude own type
128         from the callable checks.
129         * testsuite/20_util/function/60594.cc: New.
131         * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
132         const to constexpr member functions.
134         * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
135         delegating constructor.
136         * include/bits/shared_ptr_base.h
137         (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
139         * include/std/atomic: Uglify parameter names.
141         PR c++/60786
142         * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
143         1.cc: Fix invalid explicit instantiations with unqualified names.
144         * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
145         2.cc: Likweise.
146         * testsuite/20_util/tuple/53648.cc: Likweise.
147         * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
148         Likewise.
149         * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
150         Likewise.
151         * testsuite/23_containers/unordered_map/requirements/
152         debug_container.cc: Likewise.
153         * testsuite/23_containers/unordered_map/requirements/
154         explicit_instantiation/3.cc: Likewise.
155         * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
156         Likewise.
157         * testsuite/23_containers/unordered_multimap/requirements/
158         explicit_instantiation/3.cc: Likewise.
159         * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
160         Likewise.
161         * testsuite/23_containers/unordered_multiset/requirements/
162         explicit_instantiation/3.cc: Likewise.
163         * testsuite/23_containers/unordered_set/requirements/
164         debug_container.cc: Likewise.
165         * testsuite/23_containers/unordered_set/requirements/
166         explicit_instantiation/3.cc: Likewise.
168         * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
169         not use uninitialized members in mem-initializers.
170         * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
171         * testsuite/util/testsuite_common_types.h: Update comment.
173         * include/experimental/string_view: Fix inconsistent exception specs.
175         * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
176         Remove name of unused parameter.
178 2014-04-14  Jonathan Wakely  <jwakely@redhat.com>
180         * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
181         _Vector_base::_M_allocate): NullablePointer requirements do not
182         include initialization from literal zero, use value-initialization.
183         * include/bits/vector.tcc (vector::_M_insert_aux,
184         vector::_M_explace_back_aux): Likewise for assignment.
186         * include/bits/allocator.h (operator==, operator!=): Add exception
187         specifications.
189         PR libstdc++/60497
190         * include/std/tuple (get): Qualify calls to prevent ADL.
191         * testsuite/20_util/tuple/60497.cc: New.
193         * include/std/tuple (tuple_element_t): Define.
194         * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
195         test.
196         * testsuite/20_util/tuple/tuple_element_t.cc: New.
198 2014-04-11  Marc Glisse  <marc.glisse@inria.fr>
200         PR libstdc++/59434
201         * include/bits/stl_iterator.h (move_iterator::reference,
202         move_iterator::operator*): Implement LWG 2106.
203         * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
205 2014-04-11  Marc Glisse  <marc.glisse@inria.fr>
207         * include/std/complex (__complex_exp, pow): Specify the template
208         parameter in calls to std::polar, for expression templates.
210 2014-04-10  Andreas Schwab  <schwab@suse.de>
212         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
213         symbols.
214         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
215         * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
217         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
219 2014-04-07  Jonathan Wakely  <jwakely@redhat.com>
221         * testsuite/20_util/exchange/1.cc: Add missing return statements.
222         * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
223         * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
224         specifications.
226 2014-04-02  Dominique d'Humieres  <dominiq@lps.ens.fr>
227             Jack Howarth <howarth@bromo.med.uc.edu>
229         PR target/54407
230         * testsuite/30_threads/condition_variable/54185.cc: Skip for
231         darwin < 11.
233 2014-04-01  Jonathan Wakely  <jwakely@redhat.com>
235         * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
236         Update link.
237         * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
238         Fix broken links.
239         * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
240         * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
241         * doc/xml/manual/concurrency_extensions.xml
242         (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
243         * doc/html/*: Regenerate.
245 2014-03-31  Lars Gullik Bjønnes  <larsbj@gullik.org>
246             Jonathan Wakely  <jwakely@redhat.com>
248         PR libstdc++/60270
249         * include/std/iomanip (_Quoted_string operator>>): Do not clear
250         string if input is not quoted.
251         * testsuite/27_io/manipulators/standard/char/60270.cc: New.
253 2014-03-31  Jonathan Wakely  <jwakely@redhat.com>
255         * libsupc++/eh_ptr.cc: Improve static_assert messages.
257 2014-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
259         * testsuite/18_support/exception_ptr/60612-terminate.cc
260         (terminate, f): Wrap in _GLIBCXX_USE_C99.
261         * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
263 2014-03-27  Jonathan Wakely  <jwakely@redhat.com>
265         * doc/xml/manual/io.xml (std.io.objects): Additional markup.
267         * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
268         * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
269         Likewise.
270         * doc/xml/manual/backwards_compatibility.xml (backwards.third):
271         Likewise.
272         * doc/xml/manual/test.xml (test.organization.layout): Likewise.
274         * doc/xml/manual/containers.xml (associative.bitset.size_variable):
275         Fix bad s/part/chapter/ substitutions.
276         * doc/xml/manual/io.xml (std.io): Likewise.
277         * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
278         * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
280         * doc/html/*: Regenerate.
282 2014-03-27  Jonathan Wakely  <jwakely@redhat.com>
284         PR libstdc++/60612
285         * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
286         compatible with __cxa_exception.
287         * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
288         Fix typos in comments.
289         * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
290         * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
292 2014-03-25  Jonathan Wakely  <jwakely@redhat.com>
294         PR libstdc++/60658
295         * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
296         Use sizeof pointer type not the element type.
297         * testsuite/29_atomics/atomic/60658.cc: New.
299 2014-03-24  Jakub Jelinek  <jakub@redhat.com>
301         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
302         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
303         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
304         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
305         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
306         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
307         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
308         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
309         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
310         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
311         entries.
313 2014-03-23  John David Anglin  <danglin@gcc.gnu.org>
315         * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
317 2014-03-23  François Dumont  <fdumont@gcc.gnu.org>
319         * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
320         to delegated constructor.
321         (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
322         (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
323         Likewise.
324         (_Hashtable(
325         initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
327 2014-03-23  John David Anglin  <danglin@gcc.gnu.org>
329         PR libstdc++/60623
330         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
332 2014-03-21  Jonathan Wakely  <jwakely@redhat.com>
334         PR libstdc++/60587
335         * include/debug/functions.h (_Is_contiguous_sequence): Define.
336         (__foreign_iterator): Accept additional iterator. Do not dispatch on
337         iterator category.
338         (__foreign_iterator_aux2): Likewise. Add overload for iterators
339         from different types of debug container. Use _Is_contiguous_sequence
340         instead of is_lvalue_reference.
341         (__foreign_iterator_aux3): Accept additional iterator. Avoid
342         dereferencing past-the-end iterator.
343         (__foreign_iterator_aux4): Use const value_type* instead of
344         potentially user-defined const_pointer type.
345         * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
346         and pass end iterator to __gnu_debug::__foreign_iterator.
347         (__glibcxx_check_insert_range_after): Likewise.
348         (__glibcxx_check_max_load_factor): Fix comment.
349         * include/debug/vector (_Is_contiguous_sequence): Define partial
350         specializations.
351         * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
352         -std=gnu++11 option and unused header.
353         * testsuite/23_containers/vector/debug/60587.cc: New.
354         * testsuite/23_containers/vector/debug/60587_neg.cc: New.
356 2014-03-20  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
358         * crossconfig.m4: Support spu-*-elf* targets.
359         * configure: Regenerate.
361 2014-03-18  Jonathan Wakely  <jwakely@redhat.com>
363         PR libstdc++/60564
364         * include/std/future (__future_base::_Task_state<>): Change
365         constructors to template functions using perfect forwarding.
366         (__create_task_state): Use decayed type as stored task.
367         (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
368         * testsuite/30_threads/packaged_task/60564.cc: New.
370 2014-03-16  François Dumont  <fdumont@gcc.gnu.org>
372         * scripts/create_testsuite_files: Add testsuite/experimental in
373         the list of folders to search for tests.
375 2014-03-15  Andreas Schwab  <schwab@linux-m68k.org>
377         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
379 2014-03-15  Tim Shen  <timshen91@gmail.com>
381         * include/bits/regex.h: Add/modify comments.
382         * include/bits/regex_compiler.h: Likewise.
383         * include/bits/regex_executor.h: Likewise.
384         * include/bits/regex_executor.tcc: Likewise.
385         * include/bits/regex_scanner.h: Likewise.
387 2014-03-14  Jonathan Wakely  <jwakely@redhat.com>
389         PR ipa/58721
390         * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
391         _ZNSt12system_errorC* symbols which are not exported on any target.
393 2014-03-12  Roland McGrath  <mcgrathr@google.com>
394             Mark Seaborn  <mseaborn@google.com>
396         PR libstdc++/59392
397         * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
398         the address of a null pointer, not with a null pointer to pointer.
399         Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
400         * testsuite/18_support/bad_exception/59392.cc: New file.
402 2014-03-11  Jonathan Wakely  <jwakely@redhat.com>
404         PR libstdc++/60499
405         * include/debug/forward_list (forward_list::operator=(forward_list&&)):
406         Uglify name.
407         * include/debug/map (map::operator=(map&&)): Likewise.
408         * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
409         * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
410         * include/debug/set (set::operator=(set&&)): Likewise.
411         * include/debug/unordered_map
412         (unordered_map::operator=(unordered_map&&)): Likewise.
413         (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
414         * include/debug/unordered_set
415         (unordered_set::operator=(unordered_set&&)): Likewise.
416         (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
417         * include/debug/vector (vector::operator=(vector&&)): Likewise.
418         * testsuite/23_containers/forward_list/debug/60499.cc: New
419         * testsuite/23_containers/map/debug/60499.cc: New
420         * testsuite/23_containers/multimap/debug/60499.cc: New
421         * testsuite/23_containers/multiset/debug/60499.cc: New
422         * testsuite/23_containers/set/debug/60499.cc: New
423         * testsuite/23_containers/unordered_map/debug/60499.cc: New
424         * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
425         * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
426         * testsuite/23_containers/unordered_set/debug/60499.cc: New
427         * testsuite/23_containers/vector/debug/60499.cc: New
429 2014-03-05  Ed Smith-Rowland  <3dw4rd@verizon.net>
431         * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
432         for filesystem and fundamentals TS work items.
434 2014-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
436         PR c++/60376
437         * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
438         Adjust dg-error directives.
440 2014-02-26  Tim Shen  <timshen91@gmail.com>
442         * include/bits/regex.tcc (match_results<>::format,
443         regex_replace<>): Update __out after calling std::copy.
444         * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
445         Add testcase.
446         * testsuite/28_regex/match_results/format.cc: Likewise.
448 2014-02-22  Marc Glisse  <marc.glisse@inria.fr>
450         PR libstdc++/60308
451         * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
452         allocator_type&)): Remove redundant call to _M_initialize_map.
453         (deque::deque(const allocator_type&)): Initialize _Base with a
454         constructor that calls _M_initialize_map.
456         Partial revert:
458         2013-09-20  Marc Glisse  <marc.glisse@inria.fr>
459         PR libstdc++/58338
460         (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
461         _M_initialize_map.
463 2014-02-21  Ed Smith-Rowland  <3dw4rd@verizon.net>
465         Rename testsuite directory shared_mutex to shared_timed_mutex
466         for consistency.
467         * testsuite/30_threads/shared_mutex: Moved to...
468         * testsuite/30_threads/shared_timed_mutex: ...here
470 2014-02-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
472         Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
473         * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
474         * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
475         * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
476         * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
477         * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
478         * testsuite/30_threads/shared_lock/requirements/
479         explicit_instantiation.cc: Ditto.
480         * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
481         * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
482         * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
483         * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
484         * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
485         * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
486         * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
487         * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
488         * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
489         * testsuite/30_threads/shared_mutex/requirements/
490         standard_layout.cc: Ditto.
491         * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
492         * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
493         * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
494         * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
495         * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
497 2014-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
499         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
500         execution on i?86-*-solaris2.9, remove comment.
501         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
503 2014-02-09  Richard Sandiford  <rdsandiford@googlemail.com>
505         * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
506         * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
507         * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
509 2014-01-29  Jonathan Wakely  <jwakely@redhat.com>
511         * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
512         not use varargs when argument could be non-POD.
513         (__alloctr_rebind_helper): Eliminate static const bool member by
514         using true_type and false_type.
515         (allocator_traits::__allocate_helper): Likewise.
516         (allocator_traits::__construct_helper): Likewise.
517         (allocator_traits::__destroy_helper): Likewise.
518         (allocator_traits::__maxsize_helper): Likewise.
519         (allocator_traits::__select_helper): Likewise.
520         * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
521         * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
522         Remove redundant condition.
523         * include/bits/stl_vector.h (vector::operator=(const vector&)):
524         Likewise.
525         (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
526         indirection through __alloc_traits.
527         * include/ext/alloc_traits.h (__allocator_always_compares_equal):
528         Eliminate static const bool members by using true_type and false_type.
529         (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
530         * testsuite/util/testsuite_allocator.h (PointerBase): Define.
531         * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
532         New.
533         * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
535         PR libstdc++/59829
536         * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
537         (vector::_M_data_ptr): New overloaded functions to ensure empty
538         vectors do not dereference the pointer.
539         * testsuite/23_containers/vector/59829.cc: New.
540         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
541         Adjust dg-error line number.
542         * testsuite/23_containers/vector/requirements/dr438/
543         constructor_1_neg.cc: Likewise.
544         * testsuite/23_containers/vector/requirements/dr438/
545         constructor_2_neg.cc: Likewise.
546         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
547         Likewise.
549         PR libstdc++/21609
550         * include/ext/array_allocator.h: Add deprecated attribute.
552         PR libstdc++/57226
553         * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
554         installation and use of python printers.
555         * doc/xml/manual/status_cxx2011.xml: Update.
556         * doc/html/*: Regenerate.
558 2014-01-28  Jonathan Wakely  <jwakely@redhat.com>
559             Kyle Lippincott  <spectral@google.com>
561         PR libstdc++/59656
562         * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
563         constructor and grant friendship to weak_ptr.
564         (weak_ptr::lock()): Use new constructor.
565         * include/bits/shared_ptr_base.h
566         (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
567         and define specializations.
568         (__shared_count): Add new non-throwing constructor.
569         (__shared_ptr): Add new non-throwing constructor and grant friendship
570         to __weak_ptr.
571         (__weak_ptr::lock()): Use new constructor.
572         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
573         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
575 2014-01-27  Jonathan Wakely  <jwakely@redhat.com>
577         PR libstdc++/59215
578         * include/bits/shared_ptr_base.h
579         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
580         load.
582 2014-01-27  Jason Merrill  <jason@redhat.com>
584         Core DR 475
585         PR c++/41174
586         PR c++/59224
587         * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
588         * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
589         (__cxa_allocate_exception): Don't set it here.
591 2014-01-26  Jonathan Wakely  <jwakely@redhat.com>
593         * include/bits/stl_map.h: Remove anachronistic comment.
594         * include/bits/stl_multimap.h: Add whitespace.
595         * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
596         -std=gnu++11 instead of -std=c++11.
597         * testsuite/23_containers/map/operators/2.cc: Likewise.
598         * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
599         * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
600         * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
602         * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
603         * configure: Regenerate.
605 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
607         PR libstdc++/59531
608         * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
609         * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
611 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
612             Peter A. Bigot <pab@pabigot.com>
614         PR libstdc++/59531
615         * include/experimental/string_view
616         (copy(_CharT*, size_type, size_type) const): Correct throw string.
617         Correct copy start location.
619 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
620             Peter A. Bigot <pab@pabigot.com>
622         PR libstdc++/59530
623         * include/experimental/string_view (operator[](size_type) const):
624         Fix one-off index error in debug check.
625         * testsuite/experimental/string_view/element_access/char/1.cc: Don't
626         test basic_string_view at size().
627         * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
629 2014-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
630             Peter A. Bigot <pab@pabigot.com>
632         PR libstdc++/59529
633         * include/experimental/string_view
634         (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
635         * testsuite/experimental/string_view/operations/substr/char/1.cc:
636         Comment out catch of out_of_range; No terminating null
637         in basic_string_view.  Check begin == end.
638         * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
639         Ditto.
641 2014-01-24  Jonathan Wakely  <jwakely@redhat.com>
643         PR libstdc++/59548
644         * include/debug/safe_base.h (_Safe_sequence_base): Define copy
645         constructor to prevent it being implicitly defined as deleted, but
646         do not copy anything.
647         * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
648         Define copy and move constructors similar to _Safe_sequence_base's.
649         * testsuite/23_containers/unordered_map/59548.cc: New.
651 2014-01-23  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
652             Steve Ellcey  <sellcey@mips.com>
654         * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
655         function.
656         * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
657         * (configure, config.h.in): Regenerate.
658         * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
660 2014-01-23  Jonathan Wakely  <jwakely@redhat.com>
662         * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
663         * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
665         PR libstdc++/59872
666         * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
667         * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
668         Likewise.
669         * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
670         Likewise.
671         * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
672         * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
673         functions to perform moving or copying of elements from rvalue tree.
674         (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
675         (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
676         * testsuite/23_containers/map/59872.cc: New.
677         * testsuite/23_containers/map/56613.cc: Remove duplicate include.
679 2014-01-22  Jonathan Wakely  <jwakely@redhat.com>
681         * include/bits/stl_deque.h (_Deque_impl): Move comment.
683         PR libstdc++/58764
684         * include/bits/stl_deque.h (deque::deque(const allocator_type&):
685         Split into separate default constructor and constructor taking
686         allocator.
687         * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
688         * include/bits/stl_vector.h (vector::vector(const allocator_type&):
689         Likewise.
690         * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
691         * include/debug/list (list::list(const _Allocator&)): Likewise.
692         * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
693         Likewise.
694         * include/debug/multimap.h
695         (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
696         * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
697         Likewise.
698         * include/debug/multiset.h
699         (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
700         * include/debug/vector (vector::vector(const allocator_type&)):
701         Likewise.
702         * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
703         * include/profile/list (list::list(const _Allocator&)): Likewise.
704         * include/profile/map.h
705         (map::map(const _Compare&, const _Allocator&)): Likewise.
706         * include/profile/multimap.h
707         (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
708         * include/profile/set.h
709         (set::set(const _Compare&, const _Allocator&)): Likewise.
710         * include/profile/multiset.h
711         (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
712         * include/profile/vector (vector::vector(const _Allocator&)):
713         Likewise.
714         * testsuite/23_containers/deque/58764.cc: New.
715         * testsuite/23_containers/list/58764.cc: New.
716         * testsuite/23_containers/map/58764.cc: New.
717         * testsuite/23_containers/multimap/58764.cc: New.
718         * testsuite/23_containers/set/58764.cc: New.
719         * testsuite/23_containers/multiset/58764.cc: New.
720         * testsuite/23_containers/vector/58764.cc: New.
721         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
722         Adjust dg-error line number.
723         * testsuite/23_containers/deque/requirements/dr438/
724         constructor_1_neg.cc: Likewise.
725         * testsuite/23_containers/deque/requirements/dr438/
726         constructor_2_neg.cc: Likewise.
727         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
728         Likewise.
729         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
730         Likewise.
731         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
732         Likewise.
733         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
734         Likewise.
735         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
736         Likewise.
737         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
738         Likewise.
739         * testsuite/23_containers/vector/requirements/dr438/
740         constructor_1_neg.cc: Likewise.
741         * testsuite/23_containers/vector/requirements/dr438/
742         constructor_2_neg.cc: Likewise.
743         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
744         Likewise.
746         PR libstdc++/58764 (again)
747         * include/bits/stl_list.h (list): Make default constructor's exception
748         specification conditional.
749         * include/bits/stl_vector.h (vector): Likewise.
750         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
751         to default constructor.
752         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
753         Adjust dg-error line number.
754         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
755         Likewise.
756         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
757         Likewise.
758         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
759         Likewise.
760         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
761         Likewise.
762         * testsuite/23_containers/vector/requirements/dr438/
763         constructor_1_neg.cc: Likewise.
764         * testsuite/23_containers/vector/requirements/dr438/
765         constructor_2_neg.cc: Likewise.
766         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
767         Likewise.
769 2014-01-21  Tim Shen  <timshen91@gmail.com>
771         * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
772         * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
773         * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
775 2014-01-21  Jonathan Wakely  <jwakely@redhat.com>
777         PR libstdc++/56267
778         * include/bits/hashtable.h (__cache_default): Do not depend on
779         whether the hash function is DefaultConstructible or CopyAssignable.
780         (_Hashtable): Adjust static assertions.
781         * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
782         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
783         dg-error line number.
784         * testsuite/23_containers/unordered_set/
785         not_default_constructible_hash_neg.cc: Remove.
787 2014-01-20  François Dumont  <fdumont@gcc.gnu.org>
789         * scripts/create_testsuite_files: Add testsuite/experimental in
790         the list of folders to search for tests.
791         * include/experimental/string_view
792         (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
793         incompatible with constexpr qualifier.
794         (basic_string_view<>::front()): Likewise.
795         (basic_string_view<>::back()): Likewise.
796         * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
797         Merge dg-options directives into one.
798         * testsuite/experimental/string_view/element_access/char/2.cc:
799         Likewise. Remove invalid experimental namespace scope on
800         string_view_type.
802 2014-01-20  Jonathan Wakely  <jwakely@redhat.com>
804         PR libstdc++/56267
805         * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
806         friendship to _Local_iterator_base<..., false>.
807         (_Local_iterator_base): Give protected access to all existing members.
808         (_Local_iterator_base::_M_curr()): New public accessor.
809         (_Local_iterator_base::_M_get_bucket()): New public accessor.
810         (_Local_iterator_base<..., false>::_M_init()): New function to manage
811         the lifetime of the _Hash_code_base explicitly.
812         (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
813         (_Local_iterator_base<..., false>): Define copy constructor and copy
814         assignment operator that use new functions to manage _Hash_code_base.
815         (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
816         operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
817         Use public API for _Local_iterator_base.
818         * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
819         * include/debug/unordered_map (__debug::unordered_map::erase(),
820         __debug::unordered_multimap::erase()): Likewise.
821         * include/debug/unordered_set (__debug::unordered_set::erase(),
822         __debug::unordered_multiset::erase()): Likewise.
823         * testsuite/23_containers/unordered_set/56267-2.cc: New test.
825 2014-01-19  Tim Shen  <timshen91@gmail.com>
827         * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
828         Fix parse error of multiple consecutive quantifiers like "a**".
829         * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
830         Likewise.
831         * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
833 2014-01-17  François Dumont  <fdumont@gcc.gnu.org>
835         * include/profile/set.h (set): Implement C++11 allocator-aware
836         container requirements.
837         * include/profile/map.h (map): Likewise.
838         * include/profile/multiset.h (multiset): Likewise.
839         * include/profile/multimap.h (multimap): Likewise.
840         * include/profile/set.h
841         (set::operator=(const set&)): Define as default in C++11 mode.
842         (set::operator=(set&&)): Likewise.
843         * include/profile/map.h
844         (map::operator=(const map&)): Likewise.
845         (map::operator=(map&&)): Likewise.
846         * include/profile/multiset.h
847         (multiset::operator=(const multiset&)): Likewise.
848         (multiset::operator=(multiset&&)): Likewise.
849         * include/profile/multimap.h
850         (multimap::operator=(const multimap&)): Likewise.
851         (multimap::operator=(multimap&&)): Likewise.
852         * include/profile/set.h (set::operator=(std::initializer_list<>)):
853         Rely on the same operator from normal mode.
854         * include/profile/map.h (map::operator=(std::initializer_list<>)):
855         Likewise.
856         * include/profile/multiset.h
857         (multiset::operator=(std::initializer_list<>)): Likewise.
858         * include/profile/multimap.h
859         (multimap::operator=(std::initializer_list<>)): Likewise.
860         * include/profile/set.h (set::swap(set&)): Add noexcept
861         specification.
862         * include/profile/map.h (map::swap(map&)): Likewise.
863         * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
864         * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
866 2014-01-17  Tim Shen  <timshen91@gmail.com>
868         * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
869         use std::map.
870         * include/bits/regex_automaton.h: Do not use std::set.
871         * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
872         _BracketMatcher<>::_M_add_collating_element(),
873         _BracketMatcher<>::_M_add_equivalence_class(),
874         _BracketMatcher<>::_M_make_range()): Likewise.
875         * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
876         Likewise.
877         * include/bits/regex_executor.h: Do not use std::queue.
878         * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
879         _Executor<>::_M_dfs()): Likewise.
880         * include/std/regex: Remove <map>, <set> and <queue>.
882 2014-01-17  Tim Shen  <timshen91@gmail.com>
884         * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
885         basic_regex<>::assign()): Change __compile_nfa to accept
886         const _CharT* only.
887         * include/bits/regex_compiler.h: Change _Compiler's template
888         argument from <_FwdIter, _TraitsT> to <_TraitsT>.
889         * include/bits/regex_compiler.tcc: Likewise.
891 2014-01-17  Tim Shen  <timshen91@gmail.com>
893         * include/bits/regex_compiler.h: Change _ScannerT into char-type
894         templated.
895         * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
896         _ScannerBase from _Scanner; Change _Scanner's template argument from
897         _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
898         instead.
899         * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
900         _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
901         _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
902         Likewise.
903         * include/std/regex: Add <cstring> for using strchr.
905 2014-01-17  Tim Shen  <timshen91@gmail.com>
907         * bits/regex_automaton.tcc: Indentation fix.
908         * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
909         _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
910         _BracketMatcher<>): Add bool option template parameters and
911         specializations to make matching more efficient and space saving.
912         * bits/regex_compiler.tcc: Likewise.
914 2014-01-15  François Dumont  <fdumont@gcc.gnu.org>
916         PR libstdc++/59712
917         * include/bits/hashtable_policy.h: Fix some long lines.
918         * include/bits/hashtable.h (__hash_code_base_access): Define and
919         use it to check its _M_bucket_index noexcept qualification. Use
920         also in place of...
921         (__access_protected_ctor): ...this.
922         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
923         Adapt line number.
924         * testsuite/23_containers/unordered_set/
925         not_default_constructible_hash_neg.cc: Likewise.
927 2014-01-13  François Dumont  <fdumont@gcc.gnu.org>
929         * include/debug/set.h (set): Implement C++11 allocator-aware
930         container requirements.
931         * include/debug/map.h (map): Likewise.
932         * include/debug/multiset.h (multiset): Likewise.
933         * include/debug/multimap.h (multimap): Likewise.
934         * include/debug/set.h (set::operator=(set&&)): Add noexcept and
935         fix implementation regarding management of safe iterators.
936         * include/debug/map.h (map::operator=(map&&)): Likewise.
937         * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
938         * include/debug/multimap.h (multimap::operator=(multimap&&)):
939         Likewise.
940         * include/debug/set.h (set::operator=(std::initializer_list<>)):
941         Rely on the same operator from normal mode.
942         * include/debug/map.h (map::operator=(std::initializer_list<>)):
943         Likewise.
944         * include/debug/multiset.h
945         (multiset::operator=(std::initializer_list<>)): Likewise.
946         * include/debug/multimap.h
947         (multimap::operator=(std::initializer_list<>)): Likewise.
948         * include/debug/set.h (set::swap(set&)): Add noexcept
949         specification, add allocator equality check.
950         * include/debug/map.h (map::swap(map&)): Likewise.
951         * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
952         * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
954 2014-01-10  Jonathan Wakely  <jwakely@redhat.com>
956         PR libstdc++/59698
957         * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
958         and stylistic improvements.
959         * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
960         and update for C++11.
961         * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
963         PR libstdc++/59687
964         * doc/xml/manual/backwards_compatibility.xml
965         (backwards.third.nocreate_noreplace): Correct and expand.
967         PR libstdc++/59699
968         * doc/xml/manual/support.xml (std.support.types.null): Update links.
970 2014-01-09  Jonathan Wakely  <jwakely@redhat.com>
972         PR libstdc++/59738
973         * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
974         support for non-Movable types.
976         PR libstdc++/59680
977         * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
979 2014-01-08  François Dumont  <fdumont@gcc.gnu.org>
981         * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
982         *this allocator instance when building temporary vector instance
983         so that *this allocator does not get moved.
984         * include/debug/safe_base.h
985         (_Safe_sequence_base(_Safe_sequence_base&&)): New.
986         * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
987         move constructor from _Safe_sequence_base.
988         (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
989         safe iterators if the instance is moved.
990         (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
991         * testsuite/23_containers/vector/allocator/move.cc (test01): Add
992         check on a vector iterator.
993         * testsuite/23_containers/vector/allocator/move_assign.cc
994         (test02): Likewise.
995         (test03): New, test with a non-propagating allocator.
996         * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
998 2014-01-07  Tim Shen  <timshen91@gmail.com>
1000         * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
1001         _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
1002         _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
1003         _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
1004         _BracketMatcher<>::_M_add_char(),
1005         _BracketMatcher<>::_M_add_collating_element(),
1006         _BracketMatcher<>::_M_add_equivalence_class(),
1007         _BracketMatcher<>::_M_add_character_class(),
1008         _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
1009         _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
1010         Fix _AnyMatcher behavior of POSIX style and move _M_flags
1011         to template parameter; Add cache for _BracketMatcher. Adjust
1012         declarations from here...
1013         * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
1014         imbuing a regex will trigger a recompilation to rebuild the cache.
1015         * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
1016         _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
1017         different template bool parameters.
1018         * include/bits/regex_executor.h: Remove unnecessary declarations.
1019         * include/std/regex: Adjust including orders.
1020         * testsuite/28_regex/traits/char/user_defined.cc: New.
1021         * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
1023 2014-01-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1025         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1026         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1027         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1028         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1029         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1031 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
1033         Update copyright years
1035 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
1037         * testsuite/18_support/new_handler.cc,
1038         testsuite/18_support/terminate_handler.cc,
1039         testsuite/18_support/unexpected_handler.cc: Use the standard form for
1040         the copyright notice.
1042 Copyright (C) 2014 Free Software Foundation, Inc.
1044 Copying and distribution of this file, with or without modification,
1045 are permitted in any medium without royalty provided the copyright
1046 notice and this notice are preserved.