Update ChangeLog and version files for release
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob67bd0e7546eeb2d9180c40c7b4eb2134212a0158
1 2015-12-04  Release Manager
3         * GCC 5.3.0 released.
5 2015-11-26  Jonathan Wakely  <jwakely@redhat.com>
7         * testsuite/libstdc++-prettyprinters/debug.cc: Add -std=gnu++98 to
8         dg-options and avoid use of uniform-init.
10         * testsuite/libstdc++-prettyprinters/simple.cc: Add -std=gnu++98 to
11         dg-options and avoid use of uniform-init.
13 2015-11-26  David Edelsohn  <dje.gcc@gmail.com>
15         * configure: Regenerate.
17 2015-11-25  Jonathan Wakely  <jwakely@redhat.com>
19         Backport from mainline
20         2015-11-12  Jonathan Wakely  <jwakely@redhat.com>
22         PR libstdc++/56158
23         * include/bits/ios_base.h (_Ios_Fmtflags, _Ios_Openmode, _Ios_Iostate):
24         Define enumerators to ensure all values of type int are valid values
25         of the enumeration type.
26         * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Add new cases.
27         * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
28         * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
30         Backport from mainline
31         2015-09-17  Jonathan Wakely  <jwakely@redhat.com>
33         * include/bits/allocator.h (__shrink_to_fit_aux<T, true>::_S_do_it):
34         Do nothing if exceptions are disabled.
35         * include/bits/basic_string.h (basic_string::shrink_to_fit): Likewise.
37 2015-11-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
39         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): New test.
40         * configure.ac: Use it.
41         * configure: Regenerate.
42         * config.h.in: Regenerate.
44         * include/c_global/cmath [__cplusplus >= 201103L]
45         (std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO.
46         (std::isfinite): Likewise.
47         (std::isinf): Likewise.
48         (std::isnan): Likewise.
49         (std::isnormal): Likewise.
50         (std::signbit): Likewise.
51         (std::isgreater): Likewise.
52         (std::isgreaterequal): Likewise.
53         (std::isless): Likewise.
54         (std::islessequal): Likewise.
55         (std::islessgreater): Likewise.
56         (std::isunordered): Likewise.
57         (std::acosh): Likewise.
58         (std::asinh): Likewise.
59         (std::atanh): Likewise.
60         (std::cbrt): Likewise.
61         (std::copysign): Likewise.
62         (std::erf): Likewise.
63         (std::erfc): Likewise.
64         (std::exp2): Likewise.
65         (std::expm1): Likewise.
66         (std::fdim): Likewise.
67         (std::fma): Likewise.
68         (std::fmax): Likewise.
69         (std::fmin): Likewise.
70         (std::hypot): Likewise.
71         (std::ilogb): Likewise.
72         (std::lgamma): Likewise.
73         (std::llrint): Likewise.
74         (std::llround): Likewise.
75         (std::log1p): Likewise.
76         (std::log2): Likewise.
77         (std::logb): Likewise.
78         (std::lrint): Likewise.
79         (std::lround): Likewise.
80         (std::nearbyint): Likewise.
81         (std::nextafter): Likewise.
82         (std::nexttoward): Likewise.
83         (std::remainder): Likewise.
84         (std::remquo): Likewise.
85         (std::rint): Likewise.
86         (std::round): Likewise.
87         (std::scalbln): Likewise.
88         (std::scalbn): Likewise.
89         (std::tgamma): Likewise.
90         (std::trunc): Likewise.
91         * include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1] (std::tr1::acosh):
92         Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO.
93         (std::tr1::asinh): Likewise.
94         (std::tr1::atanh): Likewise.
95         (std::tr1::cbrt): Likewise.
96         (std::tr1::copysign): Likewise.
97         (std::tr1::erf): Likewise.
98         (std::tr1::erfc): Likewise.
99         (std::tr1::exp2): Likewise.
100         (std::tr1::expm1): Likewise.
101         (std::tr1::fabs): Likewise.
102         (std::tr1::fdim): Likewise.
103         (std::tr1::fma): Likewise.
104         (std::tr1::fmax): Likewise.
105         (std::tr1::fmin): Likewise.
106         (std::tr1::hypot): Likewise.
107         (std::tr1::ilogb): Likewise.
108         (std::tr1::lgamma): Likewise.
109         (std::tr1::llrint): Likewise.
110         (std::tr1::llround): Likewise.
111         (std::tr1::log1p): Likewise.
112         (std::tr1::log2): Likewise.
113         (std::tr1::logb): Likewise.
114         (std::tr1::lrint): Likewise.
115         (std::tr1::lround): Likewise.
116         (std::tr1::nearbyint): Likewise.
117         (std::tr1::nextafter): Likewise.
118         (std::tr1::nexttoward): Likewise.
119         (std::tr1::remainder): Likewise.
120         (std::tr1::remquo): Likewise.
121         (std::tr1::rint): Likewise.
122         (std::tr1::scalbln): Likewise.
123         (std::tr1::scalbn): Likewise.
124         (std::tr1::tgamma): Likewise.
125         (std::tr1::trunc): Likewise.
126         (std::tr1::pow): Likewise.
128         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
129         Restrict dg-xfail-if to *-*-solaris2.1[01]*.
131 2015-11-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
133         PR libstdc++/68448
134         * python/hook.in: Call register_libstdcxx_printers.
135         * python/libstdcxx/v6/__init__.py: Wrap it to
136         register_libstdcxx_printers.
138 2015-11-16  Doug Evans  <dje@google.com>
140         PR libstdc++/67440
141         * python/libstdcxx/v6/printers.py (find_type): Handle "const" in
142         type name.
143         * testsuite/libstdc++-prettyprinters/debug.cc: Add test for
144         const set<int>.
145         * testsuite/libstdc++-prettyprinters/simple.cc: Ditto.
146         * testsuite/libstdc++-prettyprinters/simple11.cc: Ditto.
148 2015-11-10  Jonathan Wakely  <jwakely@redhat.com>
150         PR libstdc++/68190
151         * include/bits/stl_multiset.h (multiset::find): Fix return types.
152         * include/bits/stl_set.h (set::find): Likewise.
153         * testsuite/23_containers/map/operations/2.cc: Test find return types.
154         * testsuite/23_containers/multimap/operations/2.cc: Likewise.
155         * testsuite/23_containers/multiset/operations/2.cc: Likewise.
156         * testsuite/23_containers/set/operations/2.cc: Likewise.
158 2015-10-08  Jonathan Wakely  <jwakely@redhat.com>
160         Backport from mainline
161         2015-09-17  Jonathan Wakely  <jwakely@redhat.com>
163         PR libstdc++/65913
164         * include/bits/atomic_base.h (__atomic_base<_TTp>::is_lock_free(),
165         __atomic_base<_PTp*>::is_lock_free()): Call the built-in with the
166         immediate pointer value, not a variable.
167         * include/std/atomic (atomic<T>::is_lock_free()): Likewise.
168         * testsuite/29_atomics/atomic/65913.cc: New.
170 2015-10-07  Jonathan Wakely  <jwakely@redhat.com>
172         Backport Filesystem TS fixes from mainline.
174         PR libstdc++/67173
175         PR libstdc++/67747
176         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check _XOPEN_VERSION
177         and PATH_MAX for _GLIBCXX_USE_REALPATH.  Remove _GLIBCXX_ prefix
178         from HAVE_STRUCT_DIRENT_D_TYPE.
179         * config.h.in: Regenerate.
180         * configure: Regenerate.
181         * include/bits/locale_conv.h [!_GLIBCXX_USE_WCHAR_T]
182         (__do_str_codecvt, __str_codecvt_in, __str_codecvt_out): Enable.
183         * include/experimental/fs_dir.h (operator==, operator==):
184         Use owner_before instead of pointer equality.
185         (directory_iterator(std::shared_ptr<_Dir>, error_code*)): Remove.
186         * include/experimental/fs_path.h (operator==, operator==):
187         * include/experimental/fs_path.h [!_GLIBCXX_USE_WCHAR_T]
188         (path::wstring, path::generic_wstring): Disable.
189         * src/filesystem/path.cc (path::_S_convert_loc)
190         [!_GLIBCXX_USE_WCHAR_T]: Skip conversion.
191         * src/filesystem/Makefile.am: Add cxx11_abi_sources.
192         * src/filesystem/Makefile.in: Regenerate.
193         * src/filesystem/cow-dir.cc: New.
194         * src/filesystem/cow-ops.cc: New.
195         * src/filesystem/cow-path.cc: New.
196         * src/filesystem/dir.cc: Define macro for new ABI.
197         (native_readdir): Remove.
198         (_Dir::advance): Use readdir instead of native_readdir.
199         (recursive_directory_iterator(const path&, directory_options,
200         error_code*)): Use swap instead of reset.
201         (ErrorCode): Remove.
202         (_Dir::advance): Change ErrorCode parameter to error_code*, add
203         directory_options parameter and check it on error.
204         (opendir): Rename to open_dir to avoid clashing with macro. Change
205         ErrorCode parameter to error_code*.
206         (make_shared_dir): Remove.
207         (native_readdir) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Don't set errno.
208         (directory_iterator(std::shared_ptr<_Dir>, error_code*)): Remove.
209         (directory_iterator(const path&, directory_options, error_code*)):
210         Pass options to _Dir::advance and create non-end iterator on error.
211         (recursive_directory_iterator(const path&, directory_options,
212         error_code*)): Clear error_code on ignored error, create non-end
213         iterator otherwise.
214         (recursive_directory_iterator::increment): Pass _M_options to
215         _Dir::advance.
216         (recursive_directory_iterator::pop): Likewise.
217         * src/filesystem/ops.cc: Define macro for new ABI.
218         (canonical) [!_GLIBCXX_USE_REALPATH]: Add alternative implementation.
219         (is_dot, is_dotdot): Define new helpers.
220         (create_directories): Fix error handling.
221         * src/filesystem/path.cc: Define macro for new ABI.
222         (path::_S_convert_loc) [!_GLIBCXX_USE_WCHAR_T]: Skip conversion.
223         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
224         New.
225         * testsuite/experimental/filesystem/iterators/
226         recursive_directory_iterator.cc: New.
227         * testsuite/experimental/filesystem/operations/canonical.cc: New.
228         * testsuite/experimental/filesystem/operations/create_directories.cc:
229         New.
230         * testsuite/experimental/filesystem/operations/exists.cc: Add more
231         tests.
232         * testsuite/experimental/filesystem/operations/absolute.cc: Add test
233         variables.
234         * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
235         * testsuite/experimental/filesystem/operations/current_path.cc:
236         Likewise.
237         * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
238         * testsuite/experimental/filesystem/operations/status.cc: Likewise.
239         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
240         Likewise.
241         * testsuite/experimental/filesystem/path/assign/assign.cc: Check for
242         wchar_t support.
243         * testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
244         * testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
246 2015-10-02  Jonathan Wakely  <jwakely@redhat.com>
248         PR libstdc++/65049
249         * include/bits/char_traits.h (char_traits<char>::compare,
250         char_traits<char>::find, char_traits<char>::move,
251         char_traits<char>::copy, char_traits<char>::assign): Check for zero
252         length.
253         (char_traits<wchar_t>::compare, char_traits<wchar_t>::find,
254         char_traits<wchar_t>::move, char_traits<wchar_t>::copy,
255         char_traits<wchar_t>::assign): Likewise.
256         (char_traits<char16_t>::move, char_traits<char16_t>::copy): Likewise.
257         (char_traits<char32_t>::move, char_traits<char32_t>::copy): Likewise.
258         * include/ext/pod_char_traits.h (char_traits<character<>>::move,
259         char_traits<character<>>::copy): Likewise.
260         * testsuite/21_strings/char_traits/requirements/char/65049.cc: New.
261         * testsuite/21_strings/char_traits/requirements/char16_t/65049.cc:
262         New.
263         * testsuite/21_strings/char_traits/requirements/char32_t/65049.cc:
264         New.
265         * testsuite/21_strings/char_traits/requirements/wchar_t/65049.cc:
266         New.
268         PR libstdc++/67707
269         * include/bits/stl_deque.h (_Deque_base::_M_move_impl): Initialize
270         empty object.
271         * testsuite/23_containers/deque/allocator/move.cc: Check moved-from
272         deque.
273         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
274         Adjust dg-error line number.
275         * testsuite/23_containers/deque/requirements/dr438/
276         constructor_1_neg.cc: Likewise.
277         * testsuite/23_containers/deque/requirements/dr438/
278         constructor_2_neg.cc: Likewise.
279         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
280         Likewise.
282         PR libstdc++/65142
283         * src/c++11/random.cc (random_device::_M_getval()): Check read result
284         and retry after short reads.
286 2015-09-03  Jonathan Wakely  <jwakely@redhat.com>
288         * include/std/shared_mutex (shared_timed_mutex::shared_timed_mutex):
289         Replace throw with __throw_bad_alloc.
291         PR libstdc++/66998
292         * include/experimental/functional (_Not_fn): Add exception
293         specifications and non-deduced return types.
294         (not_fn): Add exception specification and wrap pointer-to-member.
295         * testsuite/experimental/functional/not_fn.cc: Test in SFINAE context
296         and test pointer-to-member.
298         Backport from mainline
299         2015-08-27  Jonathan Wakely  <jwakely@redhat.com>
301         PR libstdc++/67374
302         * include/bits/range_access.h (valarray, begin, end): Declare.
303         * testsuite/26_numerics/valarray/range_access.cc: Test const
304         overloads.
305         * testsuite/26_numerics/valarray/range_access2.cc: New.
307         Backport from mainline
308         2015-07-24  Jonathan Wakely  <jwakely@redhat.com>
310         * include/bits/atomic_futex.h [_GLIBCXX_HAVE_LINUX_FUTEX]
311         (_M_load_and_test_until): Whitespace.
312         (_M_load_and_test): Value-initialize the unused durations.
313         (_M_load_when_equal): Add missing return value.
315         Backport from mainline
316         2015-07-13  Jonathan Wakely  <jwakely@redhat.com>
318         PR libstdc++/66855
319         * src/c++11/codecvt.cc (__codecvt_utf8_utf16_base::do_in): Override
320         endianness bit in mode.
321         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: New.
323         Backport from mainline
324         2015-04-27  Dmitry Prokoptsev  <dprokoptsev@gmail.com>
325                     Michael Hanselmann  <public@hansmi.ch>
327         PR libstdc++/62258
328         * libsupc++/eh_ptr.cc (rethrow_exception): Increment count of
329         uncaught exceptions.
330         * testsuite/18_support/exception_ptr/62258.cc: New.
332 2015-08-28  Tim Shen  <timshen@google.com>
334         Backport from mainline
335         2015-08-28  Tim Shen  <timshen@google.com>
337         PR libstdc++/67362
338         * include/bits/regex_scanner.tcc (_Scanner<>::_M_scan_normal):
339         Always returns ordinary char token if the char isn't
340         considered a special char.
341         * testsuite/28_regex/regression.cc: New test file for collecting
342         regression testcases from, typically, bugzilla.
344 2015-08-20  Jonathan Wakely  <jwakely@redhat.com>
346         * python/Makefile.am: Ensure gdb.py is installed for libstdc++ not
347         libstdc++fs.
348         * python/Makefile.in: Regenerate.
350 2015-08-18  Jonathan Wakely  <jwakely@redhat.com>
352         Backport Filesystem TS from mainline
353         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS,
354         GLIBCXX_CHECK_FILESYSTEM_DEPS): Define.
355         * configure.ac: Use them.
356         * configure: Regenerate.
357         * config.h.in: Regenerate.
358         * include/Makefile.am: Add filesystem headers. Fix order of headers.
359         * include/Makefile.in: Regenerate.
360         * include/bits/locale_conv.h (__do_str_codecvt, __str_codecvt_in,
361         __str_codecvt_out, wstring_convert): Refactor to move all conversion
362         logic to non-member functions.
363         * include/bits/quoted_string.h (_Quoted_string, operator<<,
364         operator>>): Move from <iomanip> to new header.
365         * include/experimental/filesystem: New.
366         * include/experimental/fs_dir.h: New.
367         * include/experimental/fs_fwd.h: New.
368         * include/experimental/fs_ops.h: New.
369         * include/experimental/fs_path.h: New.
370         * include/std/iomanip (_Quoted_string, operator<<, operator>>): Move
371         to <bits/quoted_string.h>.
372         * libstdcxx/v6/printers.py (StdExpPathPrinter): Define.
373         * scripts/testsuite_flags.in: Add filesystem dir to ldflags.
374         * src/Makefile.am: Add filesystem sub-dir.
375         * src/Makefile.in: Regenerate.
376         * src/filesystem/Makefile.am: New.
377         * src/filesystem/Makefile.in: New.
378         * src/filesystem/dir.cc: New.
379         * src/filesystem/ops.cc: New.
380         * src/filesystem/path.cc: New.
381         * testsuite/experimental/filesystem/operations/absolute.cc: New.
382         * testsuite/experimental/filesystem/operations/copy.cc: New.
383         * testsuite/experimental/filesystem/operations/current_path.cc: New.
384         * testsuite/experimental/filesystem/operations/exists.cc: New.
385         * testsuite/experimental/filesystem/operations/file_size.cc: New.
386         * testsuite/experimental/filesystem/operations/status.cc: New.
387         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
388         New.
389         * testsuite/experimental/filesystem/path/append/path.cc: New.
390         * testsuite/experimental/filesystem/path/assign/assign.cc: New.
391         * testsuite/experimental/filesystem/path/assign/copy.cc: New.
392         * testsuite/experimental/filesystem/path/compare/compare.cc: New.
393         * testsuite/experimental/filesystem/path/compare/path.cc: New.
394         * testsuite/experimental/filesystem/path/compare/strings.cc: New.
395         * testsuite/experimental/filesystem/path/concat/path.cc: New.
396         * testsuite/experimental/filesystem/path/concat/strings.cc: New.
397         * testsuite/experimental/filesystem/path/construct/copy.cc: New.
398         * testsuite/experimental/filesystem/path/construct/default.cc: New.
399         * testsuite/experimental/filesystem/path/construct/locale.cc: New.
400         * testsuite/experimental/filesystem/path/construct/range.cc: New.
401         * testsuite/experimental/filesystem/path/decompose/extension.cc: New.
402         * testsuite/experimental/filesystem/path/decompose/filename.cc: New.
403         * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
404         New.
405         * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
406         New.
407         * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
408         New.
409         * testsuite/experimental/filesystem/path/decompose/root_name.cc: New.
410         * testsuite/experimental/filesystem/path/decompose/root_path.cc: New.
411         * testsuite/experimental/filesystem/path/decompose/stem.cc: New.
412         * testsuite/experimental/filesystem/path/generic/generic_string.cc:
413         New.
414         * testsuite/experimental/filesystem/path/itr/traversal.cc: New.
415         * testsuite/experimental/filesystem/path/modifiers/clear.cc: New.
416         * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
417         New.
418         * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
419         New.
420         * testsuite/experimental/filesystem/path/modifiers/
421         replace_extension.cc: New.
422         * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
423         New.
424         * testsuite/experimental/filesystem/path/modifiers/swap.cc: New.
425         * testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
426         New.
427         * testsuite/experimental/filesystem/path/query/empty.cc: New.
428         * testsuite/experimental/filesystem/path/query/has_extension.cc: New.
429         * testsuite/experimental/filesystem/path/query/has_filename.cc: New.
430         * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
431         New.
432         * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
433         New.
434         * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
435         New.
436         * testsuite/experimental/filesystem/path/query/has_root_name.cc: New.
437         * testsuite/experimental/filesystem/path/query/has_root_path.cc: New.
438         * testsuite/experimental/filesystem/path/query/has_stem.cc: New.
439         * testsuite/experimental/filesystem/path/query/is_relative.cc: New.
440         * testsuite/lib/dg-options.exp (dg-require-filesystem-ts): Define.
441         * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Define.
442         * testsuite/util/testsuite_fs.h: New.
444 2015-08-18  Jonathan Wakely  <jwakely@redhat.com>
446         * Makefile.in: Regenerate with automake-1.11.6.
447         * aclocal.m4: Likewise.
448         * configure: Likewise.
449         * doc/Makefile.in: Likewise.
450         * include/Makefile.in: Likewise.
451         * libsupc++/Makefile.in: Likewise.
452         * po/Makefile.in: Likewise.
453         * python/Makefile.in: Likewise.
454         * src/Makefile.in: Likewise.
455         * src/c++11/Makefile.in: Likewise.
456         * src/c++98/Makefile.in: Likewise.
457         * testsuite/Makefile.in: Likewise.
459 2015-07-29  Tim Shen  <timshen@google.com>
461         Backport from mainline
462         2015-07-29  Tim Shen  <timshen@google.com>
464         PR libstdc++/67015
465         * include/bits/regex_compiler.h (_Compiler<>::_M_expression_term,
466         _BracketMatcher<>::_M_add_collating_element): Change signature
467         to make checking the and of bracket expression easier.
468         * include/bits/regex_compiler.tcc (_Compiler<>::_M_expression_term):
469         Treat '-' as a valid literal if it's at the end of bracket expression.
470         * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
471         New testcases.
473 2015-07-16  Release Manager
475         * GCC 5.2.0 released.
477 2015-07-02  Jonathan Wakely  <jwakely@redhat.com>
479         * acinclude.m4 (GLIBCXX_DEFAULT_ABI): Change valid arguments for
480         --with-default-libstdcxx-abi
481         * configure: Regenerate.
482         * doc/xml/manual/configure.xml: Document valid arguments.
484         * include/bits/locale_conv.h (wstring_convert): Use __cxx11 inline
485         namespace in new ABI.
486         (wstring_convert::_M_conv): Handle empty range.
488 2015-06-26  Jonathan Wakely  <jwakely@redhat.com>
490         * include/bits/stl_bvector.h (vector<bool>::vector()): Add noexcept.
491         * include/bits/stl_map.h (map::map()): Likewise.
492         * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
493         * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
494         * include/bits/stl_set.h (set::set()): Likewise.
496 2015-06-24  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
498         PR target/66200
499         * configure.host (host_cpu): Add aarch64 case.
500         * config/cpu/aarch64/atomic_word.h: New file.
502 2015-06-22  Jonathan Wakely  <jwakely@redhat.com>
504         Backport from mainline
505         2015-06-16  Jonathan Wakely  <jwakely@redhat.com>
507         PR libstdc++/65393
508         * src/c++11/thread.cc (thread::_M_make_thread): Replace shared_ptr
509         copies with moves.
511         Backport from mainline
512         2015-05-17  François Dumont  <fdumont@gcc.gnu.org>
514         * include/bits/unordered_map.h (unordered_map, unordered_multimap): Add
515         missing constructors.
516         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
517         Likewise.
518         * include/debug/unordered_map (unordered_map, unordered_multimap): Add
519         missing constructors.
520         * include/debug/unordered_set (unordered_set, unordered_multiset):
521         Likewise.
522         * include/profile/unordered_map (unordered_map, unordered_multimap): Add
523         missing constructors.
524         * include/profile/unordered_set (unordered_set, unordered_multiset):
525         Likewise.
526         * testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
527         invocations.
528         * testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
529         * testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
530         * testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.
532 2015-06-22  Jonathan Wakely  <jwakely@redhat.com>
534         Backport from mainline
535         2015-05-14  Nathan Myers  <ncm@cantrip.org>
536             Jonathan Wakely  <jwakely@redhat.com>
538         PR libstdc++/66055
539         * include/std/unordered_map (unordered_map, unordered_multimap): Add
540         missing constructors.
541         * include/std/unordered_set (unordered_set, unordered_multiset):
542         Likewise.
543         * testsuite/23_containers/unordered_map/cons/66055.cc: New.
544         * testsuite/23_containers/unordered_multimap/cons/66055.cc: New.
545         * testsuite/23_containers/unordered_multiset/cons/66055.cc: New.
546         * testsuite/23_containers/unordered_set/cons/66055.cc: New.
548 2015-06-15  Jonathan Wakely  <jwakely@redhat.com>
550         Backport from mainline
551         2015-06-09  Jonathan Wakely  <jwakely@redhat.com>
553         PR libstdc++/66030
554         * config/abi/pre/gnu.ver: Export codecvt_byname and codecvt symbols
555         for mingw32.
557 2015-06-12  Jonathan Wakely  <jwakely@redhat.com>
559         PR libstdc++/66464
560         * src/c++11/codecvt.cc (codecvt_utf16_base<char32_t>::do_max_length):
561         Return 4 not 3.
563 2015-06-08  Jonathan Wakely  <jwakely@redhat.com>
565         Backported from mainline
566         2015-06-01  Jonathan Wakely  <jwakely@redhat.com>
568         * testsuite/lib/libstdc++.exp (libstdc++_init): Unset LANGUAGE
569         environment variable.
571         PR libstdc++/66354
572         * include/bits/stl_algobase.h (__fill_a): Check length before calling
573         memset.
575         PR libstdc++/66327
576         * include/bits/stl_algobase.h (__equal<true>::equal): Do not call
577         memcmp for empty ranges.
578         (__lexicographical_compare<true>::__lc): Likewise.
580         Backported from mainline
581         2015-06-02  Jonathan Wakely  <jwakely@redhat.com>
583         * doc/xml/manual/abi.xml: Document versioning for 5.1.0 release.
584         * doc/xml/manual/evolution.xml: Fix typos.
585         * doc/html/manual/*: Regenerate.
587         Backported from mainline
588         2015-04-21  Jonathan Wakely  <jwakely@redhat.com>
590         * doc/xml/manual/configure.xml: Update descriptions of options
591         affecting dual ABI and add cross-references.
592         * doc/xml/manual/strings.xml: Clarify that string isn't COW now.
593         * doc/xml/manual/using.xml: Document ABI transition.
594         * doc/html/*: Regenerate.
596         Backported from mainline
597         2015-04-20  Jonathan Wakely  <jwakely@redhat.com>
599         * doc/xml/manual/concurrency_extensions.xml: Update documentation
600         on atomics.
601         * doc/xml/manual/using.xml: Likewise. Improve markup.
602         * doc/html/*: Regenerate.
604 2015-06-08  Jonathan Wakely  <jwakely@redhat.com>
606         PR libstdc++/66441
607         * testsuite/22_locale/conversions/string/66441.cc: New.
608         * include/bits/locale_conv.h (__do_str_codecvt): Reserve enough space
609         in the output string for BOM and complete result.
611         PR libstdc++/66417
612         * src/c++11/codecvt.cc (write_utf16_code_point): Use adjust_byte_order
613         for single UTF-16 units.
614         * testsuite/22_locale/codecvt/codecvt_utf16/66417.cc: New.
616 2015-06-04  Renlin Li  <renlin.li@arm.com>
618         Backported from mainline
619         2015-06-02  Renlin Li  <renlin.li@arm.com>
621         * testsuite/27_io/fpos/14775.cc: Add _GLIBCXX_HAVE_LIMIT_FSIZE check.
623 2015-05-28  Jonathan Wakely  <jwakely@redhat.com>
625         PR libstdc++/65352
626         * include/profile/array (array::data): Use _S_ptr.
627         * include/debug/array (array::data): Likewise.
629         PR libstdc++/65352
630         * include/std/array (__array_traits::_S_ptr): New function.
631         (array::data): Use _S_ptr to avoid creating invalid reference.
632         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
633         dg-error line numbers.
634         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
635         likewise.
637         PR libstdc++/66017
638         * include/bits/stl_tree.h (_Rb_tree_node): Use __aligned_membuf.
639         (_Rb_tree_iterator, _Rb_tree_const_iterator): Support construction
640         from _Base_ptr.
641         (_Rb_tree_const_iterator::_M_const_cast): Remove static_cast.
642         (_Rb_tree::begin, _Rb_tree::end): Remove static_cast.
643         * include/ext/aligned_buffer.h (__aligned_membuf): New type using
644         alignment of _Tp as a member subobject, not as a complete object.
645         * python/libstdcxx/v6/printers.py (StdRbtreeIteratorPrinter): Lookup
646         _Link_type manually as it might not be in the debug info.
648         Backported from mainline
649         2015-05-13  Jonathan Wakely  <jwakely@redhat.com>
651         * include/bits/basic_string.h (basic_string::basic_string()): Make
652         noexcept conditional on allocator (LWG 2455).
654         Backported from mainline
655         2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
657         * include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
659 2015-05-26  Doug Evans  <dje@google.com>
661         Backported from mainline
662         2015-04-29  Doug Evans  <dje@google.com>
664         PR libstdc++/65839
665         * python/libstdcxx/v6/xmethods.py (get_bool_type): New function.
666         Replace all lookups of "bool" with this.
667         (get_std_size_type): New function.  Replace all lookups of std::size_t
668         with this.
669         (*Worker): New method get_result_type.
670         (DequeWorkerBase.__init__): New arg val_type.  All callers updated.
671         (ListWorkerBase.__init__): New arg val_type.  All callers updated.
672         (UniquePtrGetWorker.__init__): New arg elem_type.  All callers updated.
673         Delete setting of name, enabled.
674         (UniquePtrDerefWorker.__init__): New arg elem_type.  All callers
675         updated.  Delete setting of name.
676         (UniquePtrMethodsMatcher): Rewrite for consistency with all other
677         libstdc++ xmethod matchers.
678         * testsuite/libstdc++-xmethods/array.cc: Add whatis tests.
679         * testsuite/libstdc++-xmethods/associative-containers.cc: Ditto.
680         * testsuite/libstdc++-xmethods/deque.cc: Ditto.
681         * testsuite/libstdc++-xmethods/forwardlist.cc: Ditto.
682         * testsuite/libstdc++-xmethods/list.cc: Ditto.
683         * testsuite/libstdc++-xmethods/unique_ptr.cc: Ditto.
684         * testsuite/libstdc++-xmethods/vector.cc: Ditto.
686 2015-05-26  Doug Evans  <dje@google.com>
688         Backported from mainline
689         2015-04-29  Doug Evans  <dje@google.com>
691         Use consistent naming for value type attributes.
692         * python/libstdcxx/v6/xmethods.py (ArrayWorkerBase): Rename _valtype
693         to _val_type.
694         (ArraySizeWorker, ArrayEmptyWorker): Ditto.
695         (ArrayFrontWorker, ArrayBackWorker): Ditto.
696         (ArrayAtWorker, ArraySubscriptWorker): Ditto.
697         (DequeWorkerBase): Rename elemtype to val_type.
698         (ForwardListWorkerBase): Rename _elem_type to _val_type.
699         (ForwardListFrontWorker): Ditto.  And rename elem_address to
700         val_address.
701         (ForwardListMethodsMatcher): Rename elem_type to val_type.
702         (VectorWorkerBase): Rename _elemtype to _val_type.
704 2015-05-22  David Edelsohn  <dje.gcc@gmail.com>
706         Backported from mainline
707         2015-05-21  David Edelsohn  <dje.gcc@gmail.com>
709         PR target/66224
710         * config/cpu/powerpc/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER):
711         Don't use isync. Use lwsync if available.
712         * configure.host (atomic_word_dir) [aix[56789]*]: Delete to use
713         powerpc cpu definition.
715 2015-05-07  Renlin Li  <renlin.li@arm.com>
717         Backported from mainline
718         2015-04-22  Renlin Li  <renlin.li@arm.com>
720         * testsuite/lib/dg-options.exp (dg-require-thread-fence): New.
721         * testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New.
722         * testsuite/29_atomics/atomic_flag/clear/1.cc: Use it.
723         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
724         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.
726 2015-05-04  Jakub Jelinek  <jakub@redhat.com>
728         Backported from mainline
729         2015-04-28  Marc Glisse  <marc.glisse@inria.fr>
731         PR libstdc++/65883
732         * include/std/limits (numeric_limits): Add missing unsigned.
734 2015-05-02  Jonathan Wakely  <jwakely@redhat.com>
736         * include/experimental/any (_Internal): Check for trivially-copyable
737         instead of nothrow move constructible.
738         * testsuite/experimental/any/cons/nontrivial.cc: New.
740 2015-04-28  Doug Evans  <dje@google.com>
742         * testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
743         Define to zero.
745 2015-04-28  Stephan Bergmann  <sbergman@redhat.com>
747         * include/debug/vector (_Safe_vector::operator=): Add missing returns.
749 2015-04-22  Release Manager
751         * GCC 5.1.0 released.
753 2015-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
755         * scripts/extract_symvers.pl: Ignore elfdump error output.
757 2015-04-14  Hans-Peter Nilsson  <hp@axis.com>
759         * testsuite/29_atomics/atomic/62259.cc: Assert atomic
760         alignment is larger-equal, not equal, to default alignment.
762 2015-04-13  Jonathan Wakely  <jwakely@redhat.com>
764         PR libstdc++/65754
765         * config/abi/pre/gnu.ver: Export base object constructors for
766         fstreams.
767         * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
768         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
769         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
770         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
771         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
772         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
773         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
774         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
775         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
776         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
777         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
778         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
779         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
780         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
781         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
782         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
783         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
784         * testsuite/27_io/basic_fstream/cons/base.cc: New.
786 2015-04-13  Jonathan Wakely  <jwakely@redhat.com>
788         * doc/xml/manual/evolution.xml: Document changes since 4.5 release.
789         * doc/html/*: Regenerate.
791 2015-04-12  Uros Bizjak  <ubizjak@gmail.com>
793         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
795 2015-04-10  Andreas Schwab  <schwab@linux-m68k.org>
797         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
799         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
801 2015-04-10  Jonathan Wakely  <jwakely@redhat.com>
803         * doc/xml/manual/test.xml: Improve documentation on running a subset
804         of tests.
805         * doc/html/manual/test.html: Regenerate.
807 2015-04-10  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
809         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
810         for GCC 5.1 release.
811         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
812         Likewise.
814 2015-04-10  Jonathan Wakely  <jwakely@redhat.com>
816         * include/std/shared_mutex (shared_timed_mutex): Add comments to
817         explain the logic in the non-pthread_rwlock_t version.
818         (_Mutex): Remove redundant type.
819         (_M_n_readers): Rename to _S_max_readers.
820         (_M_write_entered, _M_readers): New convenience functions.
821         (lock, lock_shared, try_lock_shared, unlock_shared): Use convenience
822         functions. Use predicates with condition variables. Simplify bitwise
823         operations.
824         (try_lock_for, try_shared_lock_for): Convert duration to time_point
825         and call try_lock_until or try_shared_lock_until respectively.
826         (try_lock_until, try_shared_lock_until): Wait on the condition
827         variables until the specified time passes.
828         (unlock): Add Debug Mode assertion.
829         (unlock_shared): Add Debug Mode assertion.
830         * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: New.
832         * include/std/shared_mutex (shared_timed_mutex): Only use
833         pthread_rwlock_t when the POSIX Timeouts option is supported.
834         * testsuite/30_threads/shared_lock/cons/5.cc: Remove
835         dg-require-gthreads-timed.
836         * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
837         * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
838         * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
840 2015-04-09  H.J. Lu  <hongjiu.lu@intel.com>
842         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
844 2015-04-09  Jonathan Wakely  <jwakely@redhat.com>
845             Richard Henderson  <rth@redhat.com>
847         PR libstdc++/65147
848         * include/bits/atomic_base.h (__atomic_base<_ITp>): Increase
849         alignment.
850         * include/std/atomic (atomic): For types with a power of two size set
851         alignment to at least the size.
852         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
853         * testsuite/29_atomics/atomic/65147.cc: New.
854         * testsuite/29_atomics/atomic_integral/65147.cc: New.
856 2015-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
858         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
859         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
860         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
862 2015-04-07  Jakub Jelinek  <jakub@redhat.com>
864         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
865         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
866         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
867         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
868         * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
869         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
870         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
871         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
873 2015-03-30  Jonathan Wakely  <jwakely@redhat.com>
875         PR libstdc++/65630
876         * config/abi/pre/gnu.ver: Export operator+ for new strings.
877         * testsuite/21_strings/basic_string/operators/char/65630.cc: New.
878         * testsuite/21_strings/basic_string/operators/wchar_t/65630.cc: New.
880 2015-03-28  Tim Shen  <timshen@google.com>
882         PR libstdc++/65420
883         * include/bits/regex_constants.h: Use constexpr variables for flags.
884         * testsuite/28_regex/constants/constexpr.cc: New testcase.
886 2015-03-27  Jonathan Wakely  <jwakely@redhat.com>
888         PR libstdc++/65499
889         * include/std/chrono: Add using-directive for literals to std::chrono.
890         * testsuite/20_util/duration/literals/65499.cc: New.
892 2015-03-26  Jonathan Wakely  <jwakely@redhat.com>
894         PR libstdc++/58038
895         PR libstdc++/60421
896         * include/std/thread (this_thread::sleep_for): Check for negative
897         durations.
898         (this_thread::sleep_until): Check for times in the past.
899         * testsuite/30_threads/this_thread/58038.cc: New.
900         * testsuite/30_threads/this_thread/60421.cc: New.
902 2015-03-26  Jonathan Wakely  <jwakely@redhat.com>
904         PR libstdc++/62259
905         PR libstdc++/65147
906         * include/std/atomic (atomic<T>): Increase alignment for types with
907         the same size as one of the integral types.
908         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
909         * testsuite/29_atomics/atomic/62259.cc: New.
911 2015-03-26  Richard Henderson  <rth@redhat.com>
913         PR libstdc++/65033
914         * include/bits/atomic_base.h (__atomic_base<T>::is_lock_free): Build
915         a fake pointer indicating type alignment.
916         (__atomic_base<T *>::is_lock_free): Likewise.
917         * include/std/atomic (atomic<T>::is_lock_free): Likewise.
919 2015-03-25  Alan Lawrence  <alan.lawrence@arm.com>
921         PR libstdc++/33394
922         * testsuite/21_strings/basic_string/pthread33394.cc: Use
923         dg-additional-options.
925 2015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
927         PR libstdc++/65543
928         * include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert
929         thinko in r150387.
930         * include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&):
931         Likewise.
932         * testsuite/27_io/rvalue_streams-2.cc: New.
934 2015-03-24  Jonathan Wakely  <jwakely@redhat.com>
936         PR libstdc++/33394
937         * testsuite/21_strings/basic_string/pthread33394.cc: Add test.
939 2015-03-23  Jonathan Wakely  <jwakely@redhat.com>
941         PR libstdc++/64967
942         * acinclude.m4: Disable dual ABI when gnu-versioned-namespace in use.
943         * configure: Regenerate.
944         * src/c++11/compatibility-c++0x.cc (error_category), generic_category,
945         system_category): Use macros for versioned namespace.
946         * src/c++11/futex.cc: Add missing end macro for versioned namespace.
948 2015-03-20  James Greenhalgh  <james.greenhalgh@arm.com>
950         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Disable
951         test for unused for ARM.
952         * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise.
953         * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
955 2015-03-20  Jonathan Wakely  <jwakely@redhat.com>
957         * include/bits/c++config (__gnu_cxx::__cxx11): Define new namespace.
958         * include/ext/codecvt_specializations.h (encoding_state,
959         encoding_char_traits): Remove abi-tag and use inline namespace.
960         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line.
962 2015-03-19  Jason Merrill  <jason@redhat.com>
964         * config/locale/gnu/messages_members.cc: Revert abi-tag change.
965         * src/c++11/cxx11-shim_facets.cc: Revert abi-tag change.
967 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
969         PR c++/65046
970         * config/locale/gnu/messages_members.cc (Catalog_info, Catalogs,
971         get_catalogs): Add abi-tag.
972         * include/ext/codecvt_specializations.h (encoding_state,
973         encoding_char_traits): Likewise.
974         * src/c++11/cxx11-ios_failure.cc (io_error_category): Likewise.
975         * src/c++11/cxx11-shim_facets.cc (__any_string::operator basic_string,
976         numpunct_shim, collate_shim, time_get_shim, moneypunct_shim,
977         money_get_shim, money_put_shim, messages_shim): Likewise.
978         * src/c++11/future.cc (future_error_category::message): Likewise.
979         * src/c++11/system_error.cc (generic_error_category::message,
980         system_error_category::message): Likewise.
981         (__sso_string): Disable -Wabi-tag warnings.
983 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
985         PR libstdc++/13631
986         * config/locale/gnu/messages_members.cc (get_glibc_msg): Fix fallback
987         implementation for old glibc. Fix whitespace.
989 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
990             Torvald Riegel  <triegel@redhat.com>
992         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for pthread_rwlock_t.
993         * config.h.in: Regenerate.
994         * configure: Regenerate.
995         * include/std/shared_mutex: Check _GLIBCXX_USE_PTHREAD_RWLOCK_T.
996         (shared_timed_mutex::_M_rwlock): Use PTHREAD_RWLOCK_INITIALIZER.
997         (shared_timed_mutex::lock_shared()): Retry on EAGAIN.
998         (shared_timed_mutex::try_lock_shared_until()): Retry on EAGAIN and
999         EDEADLK.
1001 2015-03-17  Jonathan Wakely  <jwakely@redhat.com>
1003         * libsupc++/nested_exception.h: Do not try to derive from final
1004         classes.
1005         * testsuite/18_support/nested_exception/throw_with_nested.cc: Test
1006         final class.
1008         * testsuite/30_threads/shared_lock/modifiers/1.cc: Remove name of
1009         unused exception variable.
1010         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1011         * testsuite/30_threads/shared_lock/modifiers/2.cc: Remove duplicate
1012         test.
1013         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1015 2015-03-13  Jonathan Wakely  <jwakely@redhat.com>
1017         * acinclude.m4: Make --enable-libstdcxx-time=auto work for dragonfly.
1018         * configure: Regenerate.
1020         * include/experimental/system_error: Fix include guard.
1022 2015-03-12  Renlin Li  <renlin.li@arm.com>
1024         * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Remove xfail for
1025         wrapped target.
1027 2015-03-10  Tim Shen  <timshen@google.com>
1029         PR libstdc++/64441
1030         * include/bits/regex.h (match_results<>::size,
1031         match_results<>::position, match_results<>::str,
1032         match_results<>::operator[], match_results<>::prefix,
1033         match_results<>::suffix, match_results<>::end,
1034         match_results<>::_M_resize, match_results<>::_M_unmatched_sub,
1035         match_results<>::_M_prefix, match_results<>::_M_suffix): Remove
1036         global __unmatched_sub. Add unmatched submatch as part of
1037         match_results.
1038         * include/bits/regex.tcc (__regex_algo_impl<>, regex_replace<>,
1039         regex_iterator<>::operator++): Adjust to use match_results::_M_prefix.
1040         * testsuite/28_regex/match_results/out_of_range_submatches.cc:
1041         New testcases.
1043 2015-03-09  Jonathan Wakely  <jwakely@redhat.com>
1045         PR libstdc++/64467
1046         * testsuite/28_regex/traits/char/isctype.cc: Don't test newline
1047         for newlib targets. Really fix mixed line-endings this time.
1049 2015-03-06  Jonathan Wakely  <jwakely@redhat.com>
1051         * include/std/future (future_error(error_code)): Construct base
1052         class with error_code's message.
1053         * src/c++11/future.cc (future_error::what()): Do not call c_str() on
1054         temporary string.
1056 2015-03-05  Jonathan Wakely  <jwakely@redhat.com>
1058         * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
1059         noconv result.
1060         * testsuite/22_locale/conversions/string/2.cc: Also test UTF-8.
1061         * testsuite/22_locale/conversions/string/3.cc: Likewise, and UTF-16.
1063 2015-03-04  Jonathan Wakely  <jwakely@redhat.com>
1065         PR libstdc++/64797
1066         * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
1067         incomplete multibyte sequences correctly.
1068         * include/std/codecvt (codecvt_utf8, codecvt_utf16,
1069         codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point.
1070         * src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character):
1071         Define constants.
1072         (is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point):
1073         Define convenience functions.
1074         (read_utf8_code_point): Return relevant constant to distinguish
1075         incomplete characters from invalid sequences.
1076         (read_utf16_code_point): Likewise. Check for invalid sequences.
1077         (ucs4_in, utf16_in): Use incomplete_mb_character constant.
1078         (utf16_out): Check for invalid sequences.
1079         (utf16_span): Fix condition.
1080         (ucs2_out): Use is_high_surrogate.
1081         (ucs2_in): Use incomplete_mb_character constant and fix condition.
1082         * testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace.
1083         * testsuite/22_locale/conversions/buffer/1.cc: New.
1084         * testsuite/22_locale/conversions/string/2.cc: Use char16_t and
1085         char32_t instead of wchar_t.
1086         * testsuite/22_locale/conversions/string/3.cc: New.
1088 2015-03-03  Iain Sandoe  <iain@codesourcery.com>
1090         PR libstdc++/64883
1091         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check
1092         visibility for Darwin.
1093         * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and
1094         also deprecated.
1095         * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
1097 2015-03-02  Jonathan Wakely  <jwakely@redhat.com>
1099         PR libstdc++/65279
1100         * include/std/scoped_allocator (__inner_type_impl,
1101         scoped_allocator_adaptor): Add defaulted copy assignment and move
1102         assignment operators.
1103         * testsuite/20_util/scoped_allocator/65279.cc: New.
1105 2015-03-02  Jonathan Wakely  <jwakely@redhat.com>
1107         PR libstdc++/64367
1108         * include/std/stdexcept (__sso_string): Don't use non-static member
1109         in sizeof.
1111 2015-02-28  Matthias Klose  <doko@ubuntu.com>
1113         PR libstdc++/65246
1114         * python/libstdcxx/v6/__init__.py: Use explicit relative imports.
1116 2015-02-22  Jonathan Wakely  <jwakely@redhat.com>
1118         * doc/xml/manual/status_cxx2011.xml: Remove duplicated information.
1119         * doc/html/manual/status.html: Regenerate.
1121 2015-02-20  Jonathan Wakely  <jwakely@redhat.com>
1123         PR libstdc++/64695
1124         * python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle new
1125         tuple layout.
1127         * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
1128         behavior.
1129         * doc/html/manual/status.html: Regenerate.
1131 2015-02-19  Jonathan Wakely  <jwakely@redhat.com>
1133         PR libstdc++/58357
1134         * include/bits/algorithmfwd.h (rotate): Move to inline namespace _V2.
1135         * include/bits/stl_algo.h (__rotate, rotate): Likewise.
1137 2015-02-19  Hans-Peter Nilsson  <hp@axis.com>
1139         PR testsuite/65093
1140         * testsuite/26_numerics/random/binomial_distribution/operators/values.cc
1141         (test01): Add explanatory comment.  Keep only the bd1 sub-test and
1142         split out bd2, bd3, bd4, and bd5 sub-tests into...
1143         * testsuite/26_numerics/random/binomial_distribution/operators/values2.cc,
1144         testsuite/26_numerics/random/binomial_distribution/operators/values3.cc,
1145         testsuite/26_numerics/random/binomial_distribution/operators/values4.cc,
1146         testsuite/26_numerics/random/binomial_distribution/operators/values5.cc:
1147         New separate files with the old parts.
1149 2015-02-18  Jonathan Wakely  <jwakely@redhat.com>
1151         * src/c++11/codecvt.cc (write_utf16_code_point): Fix code to output
1152         surrogate pairs.
1153         (utf16_in): Pass mode argument to write_utf16_code_point.
1154         (codecvt<char16_t, char, mbstate_t>::do_in): Set mode according to
1155         native byte order.
1156         * testsuite/22_locale/codecvt/char16_t.cc: New.
1157         * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Fix typo.
1159         * testsuite/22_locale/codecvt/char16_t.cc: Add dg-require-cstdint.
1160         * testsuite/22_locale/codecvt/char32_t.cc: Likewise.
1162 2015-02-17  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
1163             Jonathan Wakely  <jwakely@redhat.com>
1165         * testsuite/22_locale/codecvt/char32_t.cc: New.
1167 2015-02-17  Jonathan Wakely  <jwakely@redhat.com>
1169         PR libstdc++/65085
1170         * include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
1171         empty string gets null-terminated.
1172         * testsuite/21_strings/basic_string/cons/char/65085.cc: New.
1174 2015-02-13  Matthew Wahab  <matthew.wahab@arm.com>
1176         * testsuite/28_regex/traits/char/isctype.cc (test01): Fix
1177         mixed line-endings introduced in last change.
1179 2015-02-12  Matthew Wahab  <matthew.wahab@arm.com>
1181         * testsuite/28_regex/traits/char/isctype.cc (test01): Replace test
1182         for __NEWLIB__ macro with a dejagnu set macro.
1183         * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
1185 2015-02-04  Matthew Wahab  <matthew.wahab@arm.com>
1187         PR libstdc++/64467
1188         * testsuite/28_regex/traits/char/isctype.cc (test01):   Add newlib
1189         special case for '\n'.
1190         * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
1192 2015-02-01  Jonathan Wakely  <jwakely@redhat.com>
1194         * src/c++11/futex.cc: Do not define for gthr-single.h targets.
1196 2015-02-01  Jonathan Wakely  <jwakely@redhat.com>
1198         PR libstdc++/64883
1199         * include/c_global/cstdio (gets): Use __deprecated__ attribute instead
1200         of deprecated.
1201         * include/c_std/cstdio (gets): Likewise.
1202         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Avoid clashing
1203         with attributes used in darwin headers.
1205 2015-01-29  Jakub Jelinek  <jakub@redhat.com>
1207         * acinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of
1208         $vtv_cygmin = yes.  Initialize vtv_cygmin=no unconditionally first.
1209         * configure: Regenerated.
1211 2015-01-29  H.J. Lu  <hongjiu.lu@intel.com>
1213         * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
1214         after vtv_cygmin is set.
1215         * configure: Regenerated.
1217 2015-01-29  Matthias Klose  <doko@ubuntu.com>
1219         * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
1220         unconditionally.
1221         * configure: Regenerate.
1223 2015-01-29  Caroline Tice  <cmtice@google.com>
1225         Committing VTV Cywin/Ming patch for Patrick Wollgast
1226         * configure: Regenerate.
1227         * libsupc++/Makefile.in: Regenerate.
1228         * src/Makefile.in: Regenerate.
1230 2015-01-29  Jonathan Wakely  <jwakely@redhat.com>
1232         * include/bits/atomic_base.h: Use __always_inline__ instead of
1233         always_inline.
1234         * include/bits/atomic_futex.h: Likewise.
1235         * include/bits/c++config: Use __abi_tag__ instead of abi_tag.
1236         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Use
1237         __packed__ instead of packed.
1238         * include/std/shared_mutex: Use __unused__ instead of unused.
1239         * testsuite/17_intro/headers/c++1998/all_attributes.cc: New.
1240         * testsuite/17_intro/headers/c++200x/all_attributes.cc: New.
1241         * testsuite/17_intro/headers/c++2014/all_attributes.cc: New.
1243 2015-01-28  Caroline Tice  <cmtice@google.com>
1245         Committing VTV Cywin/Ming patch for Patrick Wollgast
1246         * acinclude.m4: Define VTV_CYGMIN.
1247         * libsupc++/Makefile.am: Add vtv_sources only to libsupc___la_SOURCES
1248         and libsupc__convenience_la_SOURCES if VTV_CYGMIN is not set.
1249         * libsupc++/vtv_stubs.cc: Add none weak declaration of every function
1250         for Cygwin and MinGW.
1251         * src/Makefile.am: Add libvtv.la to toolexeclib_LTLIBRARIES, if
1252         VTV_CYGMIN is set. Define libvtv_la_SOURCES, libvtv_la_LDFLAGS,
1253         libvtv_la_AM_CXXFLAGS and libvtv_la_LINK if VTV_CYGMIN is set.
1255 2015-01-28  Jonathan Wakely  <jwakely@redhat.com>
1257         PR libstdc++/64828
1258         * libsupc++/Makefile.am: Compile del_opvs.cc as C++14.
1259         * libsupc++/Makefile.in: Regenerate.
1260         * src/c++11/Makefile.in: Regenerate.
1262 2015-01-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
1264         * testsuite/lib/libstdc++.exp (v3_target_compile): Remove
1265         check for unsupported.
1266         (v3_target_compile_as_c): Likewise.
1268 2015-01-28  Richard Biener  <rguenther@suse.de>
1270         PR libstdc++/64798
1271         * libsupc++/eh_alloc.cc (struct allocated_entry): Align
1272         data member.
1273         (pool::allocate): Adjust allocation size and alignment to
1274         that change.
1275         (pool::free): Adjust pointer offsetting.
1277 2015-01-27  Jonathan Wakely  <jwakely@redhat.com>
1279         PR libstdc++/64368
1280         * include/std/shared_mutex (shared_timed_mutex::try_lock_for,
1281         shared_timed_mutex::try_lock_until): Only define when POSIX thread
1282         timeouts option is supported.
1283         (shared_timed_mutex::try_shared_lock_for,
1284         shared_timed_mutex::try_shared_lock_until): Likewise.
1286 2015-01-26  Jonathan Wakely  <jwakely@redhat.com>
1288         PR libstdc++/64368
1289         * config/locale/gnu/numeric_members.cc (numpunct<char>::~numpunct(),
1290         numpunct<wchar_t>::~numpunct()): Do not set _M_data->_M_grouping.
1291         * src/c++11/cxx11-shim_facets.cc (numpunct_shim): Remove _M_grouping
1292         and use cache's _M_grouping field.
1293         (__numpunct_fill_cache): Likewise.
1294         (__moneypunct_fill_cache): Improve comments.
1296 2015-01-26  Jonathan Wakely  <jwakely@redhat.com>
1298         * testsuite/23_containers/set/operations/2.cc: Add test for
1299         non-transparent comparison function.
1301 2015-01-25  Oleg Endo  <olegendo@gcc.gnu.org>
1303         PR target/29366
1304         * config/cpu/sh/atomicity.h (__exchange_and_add, __atomic_add): 
1305         Remove SH4A inline asm and lock based implementations and use the
1306         defaults from ext/atomicity.h.
1308 2015-01-23  Jonathan Wakely  <jwakely@redhat.com>
1310         * config/abi/pre/gnu.ver: Tighten GLIBCXX_3.4 patterns to not match
1311         new std::string constructors for byname facets.
1313 2015-01-22  Richard Biener  <rguenther@suse.de>
1315         PR libstdc++/64535
1316         * libsupc++/eh_alloc.cc: Include new.
1317         (bitmask_type): Remove.
1318         (one_buffer): Likewise.
1319         (emergency_buffer): Likewise.
1320         (emergency_used): Likewise.
1321         (dependents_buffer): Likewise.
1322         (dependents_used): Likewise.
1323         (class pool): New custom fixed-size arena, variable size object
1324         allocator.
1325         (emergency_pool): New global.
1326         (__cxxabiv1::__cxa_allocate_exception): Use new emergency_pool.
1327         (__cxxabiv1::__cxa_free_exception): Likewise.
1328         (__cxxabiv1::__cxa_allocate_dependent_exception): Likewise.
1329         (__cxxabiv1::__cxa_free_dependent_exception): Likewise.
1331 2015-01-22  Tim Shen  <timshen@google.com>
1333         PR libstdc++/64680
1334         * include/bits/regex.h (basic_regex<>::basic_regex,
1335         basic_regex<>::operator=, basic_regex<>::imbue): Conform to the
1336         standard interface.
1337         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase.
1339 2015-01-22  Tim Shen  <timshen@google.com>
1341         PR libstdc++/64649
1342         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
1343         regex_traits<>::lookup_classname): Correctly narrow input chars.
1344         * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
1346 2015-01-21  Jonathan Wakely  <jwakely@redhat.com>
1348         * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
1350 2015-01-21  Jonathan Wakely  <jwakely@redhat.com>
1352         * testsuite/29_atomics/atomic/64658.cc: Test stored value.
1354 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1356         * doc/xml/manual/status_cxx2011.xml: Remove stray dbhtml tags.
1357         * doc/xml/manual/status_cxx2014.xml: Update status.
1358         * doc/html/manual/status.html: Regenerate.
1360 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1362         PR libstdc++/64650
1363         * include/experimental/optional (bad_optional_access): Add default
1364         constructor.
1365         * testsuite/experimental/optional/requirements.cc: Test for default
1366         constructor.
1368 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1370         * include/bits/stl_map.h (map::find<>, map::count<>,
1371         map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
1372         member function templates to perform heterogeneous lookup.
1373         * include/bits/stl_multimap.h (multimap::find<>, multimap::count<>,
1374         multimap::lower_bound<>, multimap::upper_bound<>,
1375         multimap::equal_range<>): Likewise.
1376         * include/bits/stl_multiset.h (multiset::find<>, multiset::count<>,
1377         multiset::lower_bound<>, multiset::upper_bound<>,
1378         multiset::equal_range<>): Likewise.
1379         * include/bits/stl_set.h (set::find<>, set::count<>,
1380         set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
1381         * include/bits/stl_tree.h (_Rb_tree::_S_lower_bound_tr,
1382         _Rb_tree::_S_upper_bound_tr, _Rb_tree::_M_find_tr,
1383         _Rb_tree::_M_count_tr, _Rb_tree::_M_lower_bound_tr,
1384         _Rb_tree::_M_upper_bound_tr, _Rb_tree::_M_equal_range_tr): Likewise.
1385         * testsuite/23_containers/map/operations/2.cc: New.
1386         * testsuite/23_containers/multimap/operations/2.cc: New.
1387         * testsuite/23_containers/multiset/operations/2.cc: New.
1388         * testsuite/23_containers/set/operations/2.cc: New.
1390 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1392         * config/abi/pre/gnu.ver: Export new constructors.
1393         * include/bits/codecvt.h (codecvt_byname): Add string constructor.
1394         (codecvt_byname<char16_t>, codecvt_byname<char32_t>): Define explicit
1395         specializations and declare explicit instantiations.
1396         * include/bits/locale_classes.h (locale, collate_byname): Add string
1397         constructors.
1398         * include/bits/locale_facets.h (ctype_byname, numpunct_byname):
1399         Likewise.
1400         * include/bits/locale_facets_nonio.h (time_get_byname,
1401         time_put_byname, moneypunct_byname, messages_byname): Likewise.
1402         * src/c++11/codecvt.cc (codecvt_byname<char16_t>,
1403         codecvt_byname<char32_t>): Define explicit instantiations.
1404         * src/c++11/locale-inst.cc (time_put_byname, codecvt_byname):
1405         Instantiate string constructors.
1406         (ctype_byname): Define string constructor.
1407         * testsuite/22_locale/codecvt_byname/1.cc: New.
1408         * testsuite/22_locale/collate_byname/1.cc: New.
1409         * testsuite/22_locale/ctype_byname/2.cc: New.
1410         * testsuite/22_locale/messages_byname/1.cc: New.
1411         * testsuite/22_locale/moneypunct_byname/1.cc: New.
1412         * testsuite/22_locale/numpunct_byname/1.cc: New.
1414 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1416         PR libstdc++/64658
1417         * include/std/atomic (atomic_init): Define.
1418         * testsuite/29_atomics/atomic/64658.cc: New.
1420 2015-01-19  Tim Shen  <timshen@google.com>
1422         PR libstdc++/64649
1423         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
1424         regex_traits<>::lookup_classname): Support forward iterators.
1425         * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
1426         * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
1428 2015-01-19  Tim Shen  <timshen@google.com>
1430         PR libstdc++/64584
1431         PR libstdc++/64585
1432         * include/bits/regex.h (basic_regex<>::basic_regex,
1433         basic_regex<>::assign, basic_regex<>::imbue,
1434         basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
1435         imbuing basic_regex; Make assign() transactional against exception.
1436         * include/bits/regex_compiler.h (__compile_nfa<>): Add back
1437         __compile_nfa SFINAE.
1438         * include/std/regex: Adjust include order to avoid __compile_nfa
1439         forward declaration.
1440         * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
1441         * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
1443 2015-01-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
1444             Jonathan Wakely  <jwakely@redhat.com>
1446         * include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
1447         on overloads for arrays.
1448         (cbegin, cend, rbegin, rend, crbegin, crend): New.
1449         * testsuite/24_iterators/range_access_cpp14.cc: New.
1451 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
1453         PR libstdc++/64646
1454         * include/bits/stl_algo.h (__is_permutation): Also test for reaching
1455         end of the second range.
1456         * testsuite/25_algorithms/is_permutation/64646.cc: New.
1458 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
1460         * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
1461         * doc/html/manual/status.html: Regenerate.
1463 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
1465         * include/bits/atomic_futex.h: Use mutex and condition_variable when
1466         atomic int is not lock-free. Make member variables private.
1467         * src/c++11/futex.cc: Likewise.
1469         * src/c++11/futex.cc: Fix order of includes and preprocessor condition.
1471 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1473         PR libstdc++/64638
1474         * include/bits/atomic_futex.h: Use appropriate config macros for
1475         availability of std::mutex, std::condition and std::chrono.
1477 2015-01-17  Ville Voutilainen  <ville.voutilainen@gmail.com>
1478             Jonathan Wakely  <jwakely@redhat.com>
1480         * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
1481         * doc/html/*: Regenerate.
1483 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1485         DR 488
1486         PR libstdc++/58357
1487         * include/bits/algorithmfwd.h (rotate): Return an iterator.
1488         * include/bits/stl_algo.h (rotate, __rotate): Likewise.
1489         * testsuite/25_algorithms/rotate/dr488.cc: New.
1490         * testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
1491         * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
1492         2.cc: Likewise.
1493         * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
1494         pod.cc: Likewise.
1496 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1498         PR libstdc++/60940
1499         * include/bits/atomic_base.h: Remove atomic integral typedefs as
1500         synonyms for __atomic_base<int> etc.
1501         * include/std/atomic: Make atomic_int a synonym for atomic<int> and
1502         likewise for all atomic integral types.
1503         * testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
1504         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
1506 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1508         PR libstdc++/56785
1509         * include/std/tuple (_Tuple_impl): Remove zero-element specialization
1510         and define one-element specialization.
1511         * testsuite/20_util/tuple/56785.cc: New.
1513 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1515         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
1516         Remove unused header.
1517         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
1518         Likewise.
1519         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
1520         Likewise.
1522 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
1524         * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
1525         * include/std/locale: Include new header.
1526         * include/Makefile.am: Add it.
1527         * include/Makefile.in: Regenerate.
1528         * testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
1529         * testsuite/22_locale/conversions/string/1.cc: New.
1530         * testsuite/22_locale/conversions/string/2.cc: New.
1531         * testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
1532         * testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
1533         New.
1535 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
1537         * config/abi/pre/gnu.ver: Export new symbols.
1538         * include/Makefile.am: Add codecvt.
1539         * include/Makefile.in: Regenerate.
1540         * include/std/codecvt: New header.
1541         * src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
1542         __codecvt_utf8_utf16_base): Define specializations.
1543         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
1544         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
1545         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
1546         New.
1548 2015-01-16  Torvald Riegel  <triegel@redhat.com>
1550         * src/c++11/futex.cc: New file.
1551         * include/bits/atomic_futex.h: New file.
1552         * include/std/future (__future_base::_State_baseV2): Use
1553         atomic_futex_unsigned instead of mutex+condvar.
1554         * src/c++11/futex.cc: Likewise.
1555         * include/Makefile.am: Add atomic_futex.h.
1556         * include/Makefile.in: Likewise.
1557         * src/c++11/Makefile.am: Add futex.cc.
1558         * src/c++11/Makefile.in: Likewise.
1560 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
1562         * acinclude.m4: Fix typo in comment.
1563         * configure: Regenerate.
1564         * include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
1565         codecvt<char16_t, char, mbstate_t>): Declare specializations.
1566         * include/bits/locale_facets.h: Reserve space for new specializations.
1567         * src/c++11/Makefile.am: Add codecvt.cc.
1568         * src/c++11/Makefile.in: Regenerate.
1569         * src/c++11/codecvt.cc: New.
1570         * src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
1571         with -std=gnu++11.
1572         * src/c++98/Makefile.in: Regenerate.
1573         * src/c++98/locale_init.cc: Initialize new codecvt specializations.
1574         * src/c++98/localename.cc: Likewise.
1575         * config/abi/pre/gnu.ver: Exports for new codecvt specializations.
1576         * testsuite/22_locale/codecvt/utf8.cc: New.
1577         * testsuite/22_locale/locale/cons/unicode.cc: Check that new
1578         specializations are installed in locale objects.
1580 2015-01-16  Torvald Riegel  <triegel@redhat.com>
1582         * include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
1583         implementation.
1585 2015-01-13  Jonathan Wakely  <jwakely@redhat.com>
1587         PR libstdc++/64571
1588         * config/abi/pre/gnu.ver: Export fstream functions using new string.
1590 2015-01-12  Jonathan Wakely  <jwakely@redhat.com>
1592         PR libstdc++/64560
1593         * src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
1594         for RTTI support.
1596         PR libstdc++/64553
1597         * src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
1599 2015-01-10  Thomas Schwinge  <thomas@codesourcery.com>
1601         * doc/xml/manual/parallel_mode.xml: Update for libgomp being
1602         renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
1603         Multi Processing Runtime Library".
1605 2015-01-09  Jonathan Wakely  <jwakely@redhat.com>
1607         PR libstdc++/64476
1608         * include/bits/stl_uninitialized.h (uninitialized_copy): Fix
1609         is_assignable arguments.
1610         * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
1611         New.
1613 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
1615         * libsupc++/unwind-cxx.h: Revert previous commit.
1617 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
1619         * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
1621 2015-01-09  Tim Shen  <timshen@google.com>
1623         PR libstdc++/64239
1624         * include/bits/regex.h (match_results<>::swap): Use std::swap
1625         instead of swap.
1626         * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1627         Likewise.
1628         * testsuite/28_regex/match_results/swap.cc: New testcase.
1630 2015-01-08  Jonathan Wakely  <jwakely@redhat.com>
1632         PR libstdc++/60132
1633         * include/std/type_traits (has_trivial_default_constructor,
1634         has_trivial_copy_constructor, has_trivial_copy_assign): Add deprecated
1635         attribute.
1636         * testsuite/20_util/has_trivial_copy_assign/requirements/
1637         explicit_instantiation.cc: Use -Wno-deprecated.
1638         * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
1639         Likewise.
1640         * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
1641         * testsuite/20_util/has_trivial_copy_constructor/requirements/
1642         explicit_instantiation.cc: Likewise.
1643         * testsuite/20_util/has_trivial_copy_constructor/requirements/
1644         typedefs.cc: Likewise.
1645         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
1646         * testsuite/20_util/has_trivial_default_constructor/requirements/
1647         explicit_instantiation.c: Likewise.
1648         * testsuite/20_util/has_trivial_default_constructor/requirements/
1649         typedefs.cc: Likewise.
1650         * testsuite/20_util/has_trivial_default_constructor/value.cc:
1651         Likewise.
1652         * testsuite/20_util/pair/requirements/dr801.cc: Replace deprecated
1653         trait.
1654         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
1655         * testsuite/util/testsuite_common_types.h: Likewise.
1657 2015-01-08  Jonathan Wakely  <jwakely@redhat.com>
1659         * include/bits/hashtable_policy.h: Use __bool_constant.
1661 2015-01-07  Jonathan Wakely  <jwakely@redhat.com>
1663         * libsupc++/Makefile.am: Compile del_ops.cc as C++14.
1664         * libsupc++/Makefile.in: Regenerate.
1666 2015-01-06  Jonathan Wakely  <jwakely@redhat.com>
1668         * config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
1670 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
1672         Update copyright years.
1674 2015-01-04  Jonathan Wakely  <jwakely@redhat.com>
1676         PR libstdc++/64483
1677         * testsuite/18_support/exception_ptr/64241.cc: Use
1678         dg-require-atomic-builtins.
1680 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
1682         * testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
1683         date.
1685 2015-01-02  Tim Shen  <timshen@google.com>
1687         PR libstdc++/64475
1688         * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Copy the
1689         iterator, since the original one shouldn't be mutated.
1691 2015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1693         PR libstdc++/64422
1694         * src/c++98/misc-inst.cc (string::erase): Add missing overloads.
1695         (string::insert): Likewise.
1696         (string::replace): Likewise.
1697         (wstring::erase): Likewise.
1698         (wstring::insert): Likewise.
1699         (wstring::replace): Likewise.
1700         * testsuite/21_strings/basic_string/modifiers/64422.cc: New testcase.
1702 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
1704         PR libstdc++/64468
1705         * doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
1707 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
1709         PR libstdc++/64438
1710         * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
1711         Revert removal of dg-require-string-conversions.
1712         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
1713         Likewise.
1714         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
1715         Likewise.
1716         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
1717         Likewise.
1718         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
1719         Likewise.
1720         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
1721         Likewise.
1722         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
1723         Likewise.
1724         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
1725         Likewise.
1726         * testsuite/21_strings/basic_string/numeric_conversions/char/
1727         stoull.cc: Likewise.
1728         * testsuite/21_strings/basic_string/numeric_conversions/char/
1729         to_string.cc: Likewise.
1731 Copyright (C) 2015 Free Software Foundation, Inc.
1733 Copying and distribution of this file, with or without modification,
1734 are permitted in any medium without royalty provided the copyright
1735 notice and this notice are preserved.