2015-04-02 Andrew Sutton <andrew.n.sutton@gmail.com>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob6793e9d39d6d19ce8e6bcfd3d52f72b191cec7aa
1 2015-03-25  Alan Lawrence  <alan.lawrence@arm.com>
3         PR libstdc++/33394
4         * testsuite/21_strings/basic_string/pthread33394.cc: Use
5         dg-additional-options.
7 2015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
9         PR libstdc++/65543
10         * include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert
11         thinko in r150387.
12         * include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&):
13         Likewise.
14         * testsuite/27_io/rvalue_streams-2.cc: New.
16 2015-03-24  Jonathan Wakely  <jwakely@redhat.com>
18         PR libstdc++/33394
19         * testsuite/21_strings/basic_string/pthread33394.cc: Add test.
21 2015-03-23  Jonathan Wakely  <jwakely@redhat.com>
23         PR libstdc++/64967
24         * acinclude.m4: Disable dual ABI when gnu-versioned-namespace in use.
25         * configure: Regenerate.
26         * src/c++11/compatibility-c++0x.cc (error_category), generic_category,
27         system_category): Use macros for versioned namespace.
28         * src/c++11/futex.cc: Add missing end macro for versioned namespace.
30 2015-03-20  James Greenhalgh  <james.greenhalgh@arm.com>
32         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Disable
33         test for unused for ARM.
34         * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise.
35         * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
37 2015-03-20  Jonathan Wakely  <jwakely@redhat.com>
39         * include/bits/c++config (__gnu_cxx::__cxx11): Define new namespace.
40         * include/ext/codecvt_specializations.h (encoding_state,
41         encoding_char_traits): Remove abi-tag and use inline namespace.
42         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line.
44 2015-03-19  Jason Merrill  <jason@redhat.com>
46         * config/locale/gnu/messages_members.cc: Revert abi-tag change.
47         * src/c++11/cxx11-shim_facets.cc: Revert abi-tag change.
49 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
51         PR c++/65046
52         * config/locale/gnu/messages_members.cc (Catalog_info, Catalogs,
53         get_catalogs): Add abi-tag.
54         * include/ext/codecvt_specializations.h (encoding_state,
55         encoding_char_traits): Likewise.
56         * src/c++11/cxx11-ios_failure.cc (io_error_category): Likewise.
57         * src/c++11/cxx11-shim_facets.cc (__any_string::operator basic_string,
58         numpunct_shim, collate_shim, time_get_shim, moneypunct_shim,
59         money_get_shim, money_put_shim, messages_shim): Likewise.
60         * src/c++11/future.cc (future_error_category::message): Likewise.
61         * src/c++11/system_error.cc (generic_error_category::message,
62         system_error_category::message): Likewise.
63         (__sso_string): Disable -Wabi-tag warnings.
65 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
67         PR libstdc++/13631
68         * config/locale/gnu/messages_members.cc (get_glibc_msg): Fix fallback
69         implementation for old glibc. Fix whitespace.
71 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
72             Torvald Riegel  <triegel@redhat.com>
74         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for pthread_rwlock_t.
75         * config.h.in: Regenerate.
76         * configure: Regenerate.
77         * include/std/shared_mutex: Check _GLIBCXX_USE_PTHREAD_RWLOCK_T.
78         (shared_timed_mutex::_M_rwlock): Use PTHREAD_RWLOCK_INITIALIZER.
79         (shared_timed_mutex::lock_shared()): Retry on EAGAIN.
80         (shared_timed_mutex::try_lock_shared_until()): Retry on EAGAIN and
81         EDEADLK.
83 2015-03-17  Jonathan Wakely  <jwakely@redhat.com>
85         * libsupc++/nested_exception.h: Do not try to derive from final
86         classes.
87         * testsuite/18_support/nested_exception/throw_with_nested.cc: Test
88         final class.
90         * testsuite/30_threads/shared_lock/modifiers/1.cc: Remove name of
91         unused exception variable.
92         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
93         * testsuite/30_threads/shared_lock/modifiers/2.cc: Remove duplicate
94         test.
95         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
97 2015-03-13  Jonathan Wakely  <jwakely@redhat.com>
99         * acinclude.m4: Make --enable-libstdcxx-time=auto work for dragonfly.
100         * configure: Regenerate.
102         * include/experimental/system_error: Fix include guard.
104 2015-03-12  Renlin Li  <renlin.li@arm.com>
106         * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Remove xfail for
107         wrapped target.
109 2015-03-10  Tim Shen  <timshen@google.com>
111         PR libstdc++/64441
112         * include/bits/regex.h (match_results<>::size,
113         match_results<>::position, match_results<>::str,
114         match_results<>::operator[], match_results<>::prefix,
115         match_results<>::suffix, match_results<>::end,
116         match_results<>::_M_resize, match_results<>::_M_unmatched_sub,
117         match_results<>::_M_prefix, match_results<>::_M_suffix): Remove
118         global __unmatched_sub. Add unmatched submatch as part of
119         match_results.
120         * include/bits/regex.tcc (__regex_algo_impl<>, regex_replace<>,
121         regex_iterator<>::operator++): Adjust to use match_results::_M_prefix.
122         * testsuite/28_regex/match_results/out_of_range_submatches.cc:
123         New testcases.
125 2015-03-09  Jonathan Wakely  <jwakely@redhat.com>
127         PR libstdc++/64467
128         * testsuite/28_regex/traits/char/isctype.cc: Don't test newline
129         for newlib targets. Really fix mixed line-endings this time.
131 2015-03-06  Jonathan Wakely  <jwakely@redhat.com>
133         * include/std/future (future_error(error_code)): Construct base
134         class with error_code's message.
135         * src/c++11/future.cc (future_error::what()): Do not call c_str() on
136         temporary string.
138 2015-03-05  Jonathan Wakely  <jwakely@redhat.com>
140         * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
141         noconv result.
142         * testsuite/22_locale/conversions/string/2.cc: Also test UTF-8.
143         * testsuite/22_locale/conversions/string/3.cc: Likewise, and UTF-16.
145 2015-03-04  Jonathan Wakely  <jwakely@redhat.com>
147         PR libstdc++/64797
148         * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
149         incomplete multibyte sequences correctly.
150         * include/std/codecvt (codecvt_utf8, codecvt_utf16,
151         codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point.
152         * src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character):
153         Define constants.
154         (is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point):
155         Define convenience functions.
156         (read_utf8_code_point): Return relevant constant to distinguish
157         incomplete characters from invalid sequences.
158         (read_utf16_code_point): Likewise. Check for invalid sequences.
159         (ucs4_in, utf16_in): Use incomplete_mb_character constant.
160         (utf16_out): Check for invalid sequences.
161         (utf16_span): Fix condition.
162         (ucs2_out): Use is_high_surrogate.
163         (ucs2_in): Use incomplete_mb_character constant and fix condition.
164         * testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace.
165         * testsuite/22_locale/conversions/buffer/1.cc: New.
166         * testsuite/22_locale/conversions/string/2.cc: Use char16_t and
167         char32_t instead of wchar_t.
168         * testsuite/22_locale/conversions/string/3.cc: New.
170 2015-03-03  Iain Sandoe  <iain@codesourcery.com>
172         PR libstdc++/64883
173         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check
174         visibility for Darwin.
175         * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and
176         also deprecated.
177         * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
179 2015-03-02  Jonathan Wakely  <jwakely@redhat.com>
181         PR libstdc++/65279
182         * include/std/scoped_allocator (__inner_type_impl,
183         scoped_allocator_adaptor): Add defaulted copy assignment and move
184         assignment operators.
185         * testsuite/20_util/scoped_allocator/65279.cc: New.
187 2015-03-02  Jonathan Wakely  <jwakely@redhat.com>
189         PR libstdc++/64367
190         * include/std/stdexcept (__sso_string): Don't use non-static member
191         in sizeof.
193 2015-02-28  Matthias Klose  <doko@ubuntu.com>
195         PR libstdc++/65246
196         * python/libstdcxx/v6/__init__.py: Use explicit relative imports.
198 2015-02-22  Jonathan Wakely  <jwakely@redhat.com>
200         * doc/xml/manual/status_cxx2011.xml: Remove duplicated information.
201         * doc/html/manual/status.html: Regenerate.
203 2015-02-20  Jonathan Wakely  <jwakely@redhat.com>
205         PR libstdc++/64695
206         * python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle new
207         tuple layout.
209         * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
210         behavior.
211         * doc/html/manual/status.html: Regenerate.
213 2015-02-19  Jonathan Wakely  <jwakely@redhat.com>
215         PR libstdc++/58357
216         * include/bits/algorithmfwd.h (rotate): Move to inline namespace _V2.
217         * include/bits/stl_algo.h (__rotate, rotate): Likewise.
219 2015-02-19  Hans-Peter Nilsson  <hp@axis.com>
221         PR testsuite/65093
222         * testsuite/26_numerics/random/binomial_distribution/operators/values.cc
223         (test01): Add explanatory comment.  Keep only the bd1 sub-test and
224         split out bd2, bd3, bd4, and bd5 sub-tests into...
225         * testsuite/26_numerics/random/binomial_distribution/operators/values2.cc,
226         testsuite/26_numerics/random/binomial_distribution/operators/values3.cc,
227         testsuite/26_numerics/random/binomial_distribution/operators/values4.cc,
228         testsuite/26_numerics/random/binomial_distribution/operators/values5.cc:
229         New separate files with the old parts.
231 2015-02-18  Jonathan Wakely  <jwakely@redhat.com>
233         * src/c++11/codecvt.cc (write_utf16_code_point): Fix code to output
234         surrogate pairs.
235         (utf16_in): Pass mode argument to write_utf16_code_point.
236         (codecvt<char16_t, char, mbstate_t>::do_in): Set mode according to
237         native byte order.
238         * testsuite/22_locale/codecvt/char16_t.cc: New.
239         * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Fix typo.
241         * testsuite/22_locale/codecvt/char16_t.cc: Add dg-require-cstdint.
242         * testsuite/22_locale/codecvt/char32_t.cc: Likewise.
244 2015-02-17  RĂ¼diger Sonderfeld  <ruediger@c-plusplus.de>
245             Jonathan Wakely  <jwakely@redhat.com>
247         * testsuite/22_locale/codecvt/char32_t.cc: New.
249 2015-02-17  Jonathan Wakely  <jwakely@redhat.com>
251         PR libstdc++/65085
252         * include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
253         empty string gets null-terminated.
254         * testsuite/21_strings/basic_string/cons/char/65085.cc: New.
256 2015-02-13  Matthew Wahab  <matthew.wahab@arm.com>
258         * testsuite/28_regex/traits/char/isctype.cc (test01): Fix
259         mixed line-endings introduced in last change.
261 2015-02-12  Matthew Wahab  <matthew.wahab@arm.com>
263         * testsuite/28_regex/traits/char/isctype.cc (test01): Replace test
264         for __NEWLIB__ macro with a dejagnu set macro.
265         * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
267 2015-02-04  Matthew Wahab  <matthew.wahab@arm.com>
269         PR libstdc++/64467
270         * testsuite/28_regex/traits/char/isctype.cc (test01):   Add newlib
271         special case for '\n'.
272         * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
274 2015-02-01  Jonathan Wakely  <jwakely@redhat.com>
276         * src/c++11/futex.cc: Do not define for gthr-single.h targets.
278 2015-02-01  Jonathan Wakely  <jwakely@redhat.com>
280         PR libstdc++/64883
281         * include/c_global/cstdio (gets): Use __deprecated__ attribute instead
282         of deprecated.
283         * include/c_std/cstdio (gets): Likewise.
284         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Avoid clashing
285         with attributes used in darwin headers.
287 2015-01-29  Jakub Jelinek  <jakub@redhat.com>
289         * acinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of
290         $vtv_cygmin = yes.  Initialize vtv_cygmin=no unconditionally first.
291         * configure: Regenerated.
293 2015-01-29  H.J. Lu  <hongjiu.lu@intel.com>
295         * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
296         after vtv_cygmin is set.
297         * configure: Regenerated.
299 2015-01-29  Matthias Klose  <doko@ubuntu.com>
301         * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
302         unconditionally.
303         * configure: Regenerate.
305 2015-01-29  Caroline Tice  <cmtice@google.com>
307         Committing VTV Cywin/Ming patch for Patrick Wollgast
308         * configure: Regenerate.
309         * libsupc++/Makefile.in: Regenerate.
310         * src/Makefile.in: Regenerate.
312 2015-01-29  Jonathan Wakely  <jwakely@redhat.com>
314         * include/bits/atomic_base.h: Use __always_inline__ instead of
315         always_inline.
316         * include/bits/atomic_futex.h: Likewise.
317         * include/bits/c++config: Use __abi_tag__ instead of abi_tag.
318         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Use
319         __packed__ instead of packed.
320         * include/std/shared_mutex: Use __unused__ instead of unused.
321         * testsuite/17_intro/headers/c++1998/all_attributes.cc: New.
322         * testsuite/17_intro/headers/c++200x/all_attributes.cc: New.
323         * testsuite/17_intro/headers/c++2014/all_attributes.cc: New.
325 2015-01-28  Caroline Tice  <cmtice@google.com>
327         Committing VTV Cywin/Ming patch for Patrick Wollgast
328         * acinclude.m4: Define VTV_CYGMIN.
329         * libsupc++/Makefile.am: Add vtv_sources only to libsupc___la_SOURCES
330         and libsupc__convenience_la_SOURCES if VTV_CYGMIN is not set.
331         * libsupc++/vtv_stubs.cc: Add none weak declaration of every function
332         for Cygwin and MinGW.
333         * src/Makefile.am: Add libvtv.la to toolexeclib_LTLIBRARIES, if
334         VTV_CYGMIN is set. Define libvtv_la_SOURCES, libvtv_la_LDFLAGS,
335         libvtv_la_AM_CXXFLAGS and libvtv_la_LINK if VTV_CYGMIN is set.
337 2015-01-28  Jonathan Wakely  <jwakely@redhat.com>
339         PR libstdc++/64828
340         * libsupc++/Makefile.am: Compile del_opvs.cc as C++14.
341         * libsupc++/Makefile.in: Regenerate.
342         * src/c++11/Makefile.in: Regenerate.
344 2015-01-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
346         * testsuite/lib/libstdc++.exp (v3_target_compile): Remove
347         check for unsupported.
348         (v3_target_compile_as_c): Likewise.
350 2015-01-28  Richard Biener  <rguenther@suse.de>
352         PR libstdc++/64798
353         * libsupc++/eh_alloc.cc (struct allocated_entry): Align
354         data member.
355         (pool::allocate): Adjust allocation size and alignment to
356         that change.
357         (pool::free): Adjust pointer offsetting.
359 2015-01-27  Jonathan Wakely  <jwakely@redhat.com>
361         PR libstdc++/64368
362         * include/std/shared_mutex (shared_timed_mutex::try_lock_for,
363         shared_timed_mutex::try_lock_until): Only define when POSIX thread
364         timeouts option is supported.
365         (shared_timed_mutex::try_shared_lock_for,
366         shared_timed_mutex::try_shared_lock_until): Likewise.
368 2015-01-26  Jonathan Wakely  <jwakely@redhat.com>
370         PR libstdc++/64368
371         * config/locale/gnu/numeric_members.cc (numpunct<char>::~numpunct(),
372         numpunct<wchar_t>::~numpunct()): Do not set _M_data->_M_grouping.
373         * src/c++11/cxx11-shim_facets.cc (numpunct_shim): Remove _M_grouping
374         and use cache's _M_grouping field.
375         (__numpunct_fill_cache): Likewise.
376         (__moneypunct_fill_cache): Improve comments.
378 2015-01-26  Jonathan Wakely  <jwakely@redhat.com>
380         * testsuite/23_containers/set/operations/2.cc: Add test for
381         non-transparent comparison function.
383 2015-01-25  Oleg Endo  <olegendo@gcc.gnu.org>
385         PR target/29366
386         * config/cpu/sh/atomicity.h (__exchange_and_add, __atomic_add): 
387         Remove SH4A inline asm and lock based implementations and use the
388         defaults from ext/atomicity.h.
390 2015-01-23  Jonathan Wakely  <jwakely@redhat.com>
392         * config/abi/pre/gnu.ver: Tighten GLIBCXX_3.4 patterns to not match
393         new std::string constructors for byname facets.
395 2015-01-22  Richard Biener  <rguenther@suse.de>
397         PR libstdc++/64535
398         * libsupc++/eh_alloc.cc: Include new.
399         (bitmask_type): Remove.
400         (one_buffer): Likewise.
401         (emergency_buffer): Likewise.
402         (emergency_used): Likewise.
403         (dependents_buffer): Likewise.
404         (dependents_used): Likewise.
405         (class pool): New custom fixed-size arena, variable size object
406         allocator.
407         (emergency_pool): New global.
408         (__cxxabiv1::__cxa_allocate_exception): Use new emergency_pool.
409         (__cxxabiv1::__cxa_free_exception): Likewise.
410         (__cxxabiv1::__cxa_allocate_dependent_exception): Likewise.
411         (__cxxabiv1::__cxa_free_dependent_exception): Likewise.
413 2015-01-22  Tim Shen  <timshen@google.com>
415         PR libstdc++/64680
416         * include/bits/regex.h (basic_regex<>::basic_regex,
417         basic_regex<>::operator=, basic_regex<>::imbue): Conform to the
418         standard interface.
419         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase.
421 2015-01-22  Tim Shen  <timshen@google.com>
423         PR libstdc++/64649
424         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
425         regex_traits<>::lookup_classname): Correctly narrow input chars.
426         * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
428 2015-01-21  Jonathan Wakely  <jwakely@redhat.com>
430         * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
432 2015-01-21  Jonathan Wakely  <jwakely@redhat.com>
434         * testsuite/29_atomics/atomic/64658.cc: Test stored value.
436 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
438         * doc/xml/manual/status_cxx2011.xml: Remove stray dbhtml tags.
439         * doc/xml/manual/status_cxx2014.xml: Update status.
440         * doc/html/manual/status.html: Regenerate.
442 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
444         PR libstdc++/64650
445         * include/experimental/optional (bad_optional_access): Add default
446         constructor.
447         * testsuite/experimental/optional/requirements.cc: Test for default
448         constructor.
450 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
452         * include/bits/stl_map.h (map::find<>, map::count<>,
453         map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
454         member function templates to perform heterogeneous lookup.
455         * include/bits/stl_multimap.h (multimap::find<>, multimap::count<>,
456         multimap::lower_bound<>, multimap::upper_bound<>,
457         multimap::equal_range<>): Likewise.
458         * include/bits/stl_multiset.h (multiset::find<>, multiset::count<>,
459         multiset::lower_bound<>, multiset::upper_bound<>,
460         multiset::equal_range<>): Likewise.
461         * include/bits/stl_set.h (set::find<>, set::count<>,
462         set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
463         * include/bits/stl_tree.h (_Rb_tree::_S_lower_bound_tr,
464         _Rb_tree::_S_upper_bound_tr, _Rb_tree::_M_find_tr,
465         _Rb_tree::_M_count_tr, _Rb_tree::_M_lower_bound_tr,
466         _Rb_tree::_M_upper_bound_tr, _Rb_tree::_M_equal_range_tr): Likewise.
467         * testsuite/23_containers/map/operations/2.cc: New.
468         * testsuite/23_containers/multimap/operations/2.cc: New.
469         * testsuite/23_containers/multiset/operations/2.cc: New.
470         * testsuite/23_containers/set/operations/2.cc: New.
472 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
474         * config/abi/pre/gnu.ver: Export new constructors.
475         * include/bits/codecvt.h (codecvt_byname): Add string constructor.
476         (codecvt_byname<char16_t>, codecvt_byname<char32_t>): Define explicit
477         specializations and declare explicit instantiations.
478         * include/bits/locale_classes.h (locale, collate_byname): Add string
479         constructors.
480         * include/bits/locale_facets.h (ctype_byname, numpunct_byname):
481         Likewise.
482         * include/bits/locale_facets_nonio.h (time_get_byname,
483         time_put_byname, moneypunct_byname, messages_byname): Likewise.
484         * src/c++11/codecvt.cc (codecvt_byname<char16_t>,
485         codecvt_byname<char32_t>): Define explicit instantiations.
486         * src/c++11/locale-inst.cc (time_put_byname, codecvt_byname):
487         Instantiate string constructors.
488         (ctype_byname): Define string constructor.
489         * testsuite/22_locale/codecvt_byname/1.cc: New.
490         * testsuite/22_locale/collate_byname/1.cc: New.
491         * testsuite/22_locale/ctype_byname/2.cc: New.
492         * testsuite/22_locale/messages_byname/1.cc: New.
493         * testsuite/22_locale/moneypunct_byname/1.cc: New.
494         * testsuite/22_locale/numpunct_byname/1.cc: New.
496 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
498         PR libstdc++/64658
499         * include/std/atomic (atomic_init): Define.
500         * testsuite/29_atomics/atomic/64658.cc: New.
502 2015-01-19  Tim Shen  <timshen@google.com>
504         PR libstdc++/64649
505         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
506         regex_traits<>::lookup_classname): Support forward iterators.
507         * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
508         * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
510 2015-01-19  Tim Shen  <timshen@google.com>
512         PR libstdc++/64584
513         PR libstdc++/64585
514         * include/bits/regex.h (basic_regex<>::basic_regex,
515         basic_regex<>::assign, basic_regex<>::imbue,
516         basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
517         imbuing basic_regex; Make assign() transactional against exception.
518         * include/bits/regex_compiler.h (__compile_nfa<>): Add back
519         __compile_nfa SFINAE.
520         * include/std/regex: Adjust include order to avoid __compile_nfa
521         forward declaration.
522         * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
523         * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
525 2015-01-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
526             Jonathan Wakely  <jwakely@redhat.com>
528         * include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
529         on overloads for arrays.
530         (cbegin, cend, rbegin, rend, crbegin, crend): New.
531         * testsuite/24_iterators/range_access_cpp14.cc: New.
533 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
535         PR libstdc++/64646
536         * include/bits/stl_algo.h (__is_permutation): Also test for reaching
537         end of the second range.
538         * testsuite/25_algorithms/is_permutation/64646.cc: New.
540 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
542         * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
543         * doc/html/manual/status.html: Regenerate.
545 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
547         * include/bits/atomic_futex.h: Use mutex and condition_variable when
548         atomic int is not lock-free. Make member variables private.
549         * src/c++11/futex.cc: Likewise.
551         * src/c++11/futex.cc: Fix order of includes and preprocessor condition.
553 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
555         PR libstdc++/64638
556         * include/bits/atomic_futex.h: Use appropriate config macros for
557         availability of std::mutex, std::condition and std::chrono.
559 2015-01-17  Ville Voutilainen  <ville.voutilainen@gmail.com>
560             Jonathan Wakely  <jwakely@redhat.com>
562         * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
563         * doc/html/*: Regenerate.
565 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
567         DR 488
568         PR libstdc++/58357
569         * include/bits/algorithmfwd.h (rotate): Return an iterator.
570         * include/bits/stl_algo.h (rotate, __rotate): Likewise.
571         * testsuite/25_algorithms/rotate/dr488.cc: New.
572         * testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
573         * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
574         2.cc: Likewise.
575         * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
576         pod.cc: Likewise.
578 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
580         PR libstdc++/60940
581         * include/bits/atomic_base.h: Remove atomic integral typedefs as
582         synonyms for __atomic_base<int> etc.
583         * include/std/atomic: Make atomic_int a synonym for atomic<int> and
584         likewise for all atomic integral types.
585         * testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
586         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
588 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
590         PR libstdc++/56785
591         * include/std/tuple (_Tuple_impl): Remove zero-element specialization
592         and define one-element specialization.
593         * testsuite/20_util/tuple/56785.cc: New.
595 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
597         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
598         Remove unused header.
599         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
600         Likewise.
601         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
602         Likewise.
604 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
606         * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
607         * include/std/locale: Include new header.
608         * include/Makefile.am: Add it.
609         * include/Makefile.in: Regenerate.
610         * testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
611         * testsuite/22_locale/conversions/string/1.cc: New.
612         * testsuite/22_locale/conversions/string/2.cc: New.
613         * testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
614         * testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
615         New.
617 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
619         * config/abi/pre/gnu.ver: Export new symbols.
620         * include/Makefile.am: Add codecvt.
621         * include/Makefile.in: Regenerate.
622         * include/std/codecvt: New header.
623         * src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
624         __codecvt_utf8_utf16_base): Define specializations.
625         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
626         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
627         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
628         New.
630 2015-01-16  Torvald Riegel  <triegel@redhat.com>
632         * src/c++11/futex.cc: New file.
633         * include/bits/atomic_futex.h: New file.
634         * include/std/future (__future_base::_State_baseV2): Use
635         atomic_futex_unsigned instead of mutex+condvar.
636         * src/c++11/futex.cc: Likewise.
637         * include/Makefile.am: Add atomic_futex.h.
638         * include/Makefile.in: Likewise.
639         * src/c++11/Makefile.am: Add futex.cc.
640         * src/c++11/Makefile.in: Likewise.
642 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
644         * acinclude.m4: Fix typo in comment.
645         * configure: Regenerate.
646         * include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
647         codecvt<char16_t, char, mbstate_t>): Declare specializations.
648         * include/bits/locale_facets.h: Reserve space for new specializations.
649         * src/c++11/Makefile.am: Add codecvt.cc.
650         * src/c++11/Makefile.in: Regenerate.
651         * src/c++11/codecvt.cc: New.
652         * src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
653         with -std=gnu++11.
654         * src/c++98/Makefile.in: Regenerate.
655         * src/c++98/locale_init.cc: Initialize new codecvt specializations.
656         * src/c++98/localename.cc: Likewise.
657         * config/abi/pre/gnu.ver: Exports for new codecvt specializations.
658         * testsuite/22_locale/codecvt/utf8.cc: New.
659         * testsuite/22_locale/locale/cons/unicode.cc: Check that new
660         specializations are installed in locale objects.
662 2015-01-16  Torvald Riegel  <triegel@redhat.com>
664         * include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
665         implementation.
667 2015-01-13  Jonathan Wakely  <jwakely@redhat.com>
669         PR libstdc++/64571
670         * config/abi/pre/gnu.ver: Export fstream functions using new string.
672 2015-01-12  Jonathan Wakely  <jwakely@redhat.com>
674         PR libstdc++/64560
675         * src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
676         for RTTI support.
678         PR libstdc++/64553
679         * src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
681 2015-01-10  Thomas Schwinge  <thomas@codesourcery.com>
683         * doc/xml/manual/parallel_mode.xml: Update for libgomp being
684         renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
685         Multi Processing Runtime Library".
687 2015-01-09  Jonathan Wakely  <jwakely@redhat.com>
689         PR libstdc++/64476
690         * include/bits/stl_uninitialized.h (uninitialized_copy): Fix
691         is_assignable arguments.
692         * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
693         New.
695 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
697         * libsupc++/unwind-cxx.h: Revert previous commit.
699 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
701         * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
703 2015-01-09  Tim Shen  <timshen@google.com>
705         PR libstdc++/64239
706         * include/bits/regex.h (match_results<>::swap): Use std::swap
707         instead of swap.
708         * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
709         Likewise.
710         * testsuite/28_regex/match_results/swap.cc: New testcase.
712 2015-01-08  Jonathan Wakely  <jwakely@redhat.com>
714         PR libstdc++/60132
715         * include/std/type_traits (has_trivial_default_constructor,
716         has_trivial_copy_constructor, has_trivial_copy_assign): Add deprecated
717         attribute.
718         * testsuite/20_util/has_trivial_copy_assign/requirements/
719         explicit_instantiation.cc: Use -Wno-deprecated.
720         * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
721         Likewise.
722         * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
723         * testsuite/20_util/has_trivial_copy_constructor/requirements/
724         explicit_instantiation.cc: Likewise.
725         * testsuite/20_util/has_trivial_copy_constructor/requirements/
726         typedefs.cc: Likewise.
727         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
728         * testsuite/20_util/has_trivial_default_constructor/requirements/
729         explicit_instantiation.c: Likewise.
730         * testsuite/20_util/has_trivial_default_constructor/requirements/
731         typedefs.cc: Likewise.
732         * testsuite/20_util/has_trivial_default_constructor/value.cc:
733         Likewise.
734         * testsuite/20_util/pair/requirements/dr801.cc: Replace deprecated
735         trait.
736         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
737         * testsuite/util/testsuite_common_types.h: Likewise.
739 2015-01-08  Jonathan Wakely  <jwakely@redhat.com>
741         * include/bits/hashtable_policy.h: Use __bool_constant.
743 2015-01-07  Jonathan Wakely  <jwakely@redhat.com>
745         * libsupc++/Makefile.am: Compile del_ops.cc as C++14.
746         * libsupc++/Makefile.in: Regenerate.
748 2015-01-06  Jonathan Wakely  <jwakely@redhat.com>
750         * config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
752 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
754         Update copyright years.
756 2015-01-04  Jonathan Wakely  <jwakely@redhat.com>
758         PR libstdc++/64483
759         * testsuite/18_support/exception_ptr/64241.cc: Use
760         dg-require-atomic-builtins.
762 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
764         * testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
765         date.
767 2015-01-02  Tim Shen  <timshen@google.com>
769         PR libstdc++/64475
770         * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Copy the
771         iterator, since the original one shouldn't be mutated.
773 2015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
775         PR libstdc++/64422
776         * src/c++98/misc-inst.cc (string::erase): Add missing overloads.
777         (string::insert): Likewise.
778         (string::replace): Likewise.
779         (wstring::erase): Likewise.
780         (wstring::insert): Likewise.
781         (wstring::replace): Likewise.
782         * testsuite/21_strings/basic_string/modifiers/64422.cc: New testcase.
784 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
786         PR libstdc++/64468
787         * doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
789 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
791         PR libstdc++/64438
792         * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
793         Revert removal of dg-require-string-conversions.
794         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
795         Likewise.
796         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
797         Likewise.
798         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
799         Likewise.
800         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
801         Likewise.
802         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
803         Likewise.
804         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
805         Likewise.
806         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
807         Likewise.
808         * testsuite/21_strings/basic_string/numeric_conversions/char/
809         stoull.cc: Likewise.
810         * testsuite/21_strings/basic_string/numeric_conversions/char/
811         to_string.cc: Likewise.
813 Copyright (C) 2015 Free Software Foundation, Inc.
815 Copying and distribution of this file, with or without modification,
816 are permitted in any medium without royalty provided the copyright
817 notice and this notice are preserved.