rs6000.c (struct rs6000_stack): Correct comments.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob6c5964af75ad88cdb6c4d89d330642424c3fc9c1
1 2015-05-19  Jonathan Wakely  <jwakely@redhat.com>
3         * include/bits/stl_list.h (_M_resize_pos(size_type&)): Declare.
4         (operator==(const list&, const list&)): If size() is O(1) compare
5         sizes before comparing each element.
6         * include/bits/list.tcc (list::_M_resize_pos(size_type&)): Define.
7         (list::resize): Use _M_resize_pos.
9 2015-05-19  François Dumont  <fdumont@gcc.gnu.org>
11         * testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
12         invocations.
13         * testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
14         * testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
15         * testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.
17 2015-05-17  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
19         * configure.host: Define cpu_defines_dir for ARM.
20         * config/cpu/arm/cpu_defines.h: New file.
22 2015-05-17  François Dumont  <fdumont@gcc.gnu.org>
24         * include/bits/unordered_map.h (unordered_map, unordered_multimap): Add
25         missing constructors.
26         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
27         Likewise.
28         * include/debug/unordered_map (unordered_map, unordered_multimap): Add
29         missing constructors.
30         * include/debug/unordered_set (unordered_set, unordered_multiset):
31         Likewise.
32         * include/profile/unordered_map (unordered_map, unordered_multimap): Add
33         missing constructors.
34         * include/profile/unordered_set (unordered_set, unordered_multiset):
35         Likewise.
37 2015-05-15  Jonathan Wakely  <jwakely@redhat.com>
39         * src/filesystem/ops.cc (stat_type): Define alias for struct stat and
40         use throughout the file.
41         (make_file_type): New function.
42         (file_size(const path&, error_code&)): Report an error for anything
43         that isn't a regular file.
44         (status(const path&), symlink_status(const path&)): Do not throw for
45         file_type::not_found.
46         (temp_directory_path()): Check additional environment variables.
47         * testsuite/experimental/filesystem/operations/exists.cc: New.
48         * testsuite/experimental/filesystem/operations/file_size.cc: New.
49         * testsuite/experimental/filesystem/operations/status.cc: New.
50         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
51         New.
53 2015-05-14  Nathan Myers  <ncm@cantrip.org>
54             Jonathan Wakely  <jwakely@redhat.com>
56         PR libstdc++/66055
57         * include/std/unordered_map (unordered_map, unordered_multimap): Add
58         missing constructors.
59         * include/std/unordered_set (unordered_set, unordered_multiset):
60         Likewise.
61         * testsuite/23_containers/unordered_map/cons/66055.cc: New.
62         * testsuite/23_containers/unordered_multimap/cons/66055.cc: New.
63         * testsuite/23_containers/unordered_multiset/cons/66055.cc: New.
64         * testsuite/23_containers/unordered_set/cons/66055.cc: New.
66 2015-05-14  Jonathan Wakely  <jwakely@redhat.com>
68         PR libstdc++/66011
69         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmod and
70         sendfile.
71         * config.h.in: Regenerate.
72         * configure: Regenerate.
73         * src/filesystem/ops.cc (do_copy_file): Fix arguments to open(). Do
74         not return after copying contents. Use fchmod, fchmodat, and sendfile
75         when available.
76         (current_path, permissions, space): Use errno not return value.
78         PR libstdc++/66018
79         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for struct
80         dirent.d_type.
81         * config.h.in: Regenerate.
82         * configure: Regenerate.
83         * configure.ac (AC_STRUCT_DIRENT_D_TYPE): Remove.
85 2015-05-13  Eric Botcazou  <ebotcazou@adacore.com>
87         * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Delete.
88         * configure.ac: Remove GLIBCXX_ENABLE_SJLJ_EXCEPTIONS.
89         * config.h.in: Regenerate.
90         * configure: Likewise.
91         * libsupc++/eh_personality.cc: Replace _GLIBCXX_SJLJ_EXCEPTIONS by
92         __USING_SJLJ_EXCEPTIONS__.
93         * libsupc++/eh_throw.cc: Likewise.
94         * libsupc++/eh_ptr.cc: Likewise.
95         * doc/html/manual/appendix_porting.html: Remove
96         GLIBCXX_ENABLE_SJLJ_EXCEPTIONS
97         * doc/xml/manual/build_hacking.xml: Likewise.
98         * doc/html/manual/configure.html: Remove --enable-sjlj-exceptions.
99         * doc/xml/manual/configure.xml: Likewise.
101 2015-05-13  Jonathan Wakely  <jwakely@redhat.com>
103         * include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)): Check
104         for nullptr (LWG 2415).
105         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Test
106         construction from empty unique_ptr.
107         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
108         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
110         * include/bits/stl_raw_storage_iter.h (raw_storage_iterator::base()):
111         Define (LWG 2454).
112         * testsuite/20_util/raw_storage_iterator/base.cc: New.
114         * include/std/future (packaged_task(allocator_arg_t, const A&, F&&):
115         Remove explicit (LWG 2407).
117         * include/bits/basic_string.h (basic_string::basic_string()): Make
118         noexcept conditional on allocator (LWG 2455).
120         * include/std/complex (polar): Check for negative rho (LWG 2459).
122         * include/experimental/tuple (apply): Handle pointers to member (LWG
123         2418).
124         * include/std/functional (_Mem_fn_base): Make constructors constexpr.
125         (_Maybe_wrap_member_pointer::__do_wrap): Make constexpr.
126         * testsuite/experimental/tuple/apply.cc: Test pointer to member.
128         * include/bits/random.h (seed_seq): More noexcept (LWG 2440).
130         * include/bits/alloc_traits.h (_S_max_size): Implement LWG 2466.
131         * testsuite/20_util/allocator_traits/members/max_size.cc: Adjust.
132         * testsuite/23_containers/forward_list/allocator/minimal.cc:
133         Likewise.
134         * testsuite/23_containers/map/allocator/minimal.cc: Likewise.
135         * testsuite/23_containers/multimap/allocator/minimal.cc: Likewise.
136         * testsuite/23_containers/multiset/allocator/minimal.cc: Likewise.
137         * testsuite/23_containers/set/allocator/minimal.cc: Likewise.
138         * testsuite/23_containers/unordered_map/allocator/minimal.cc:
139         Likewise.
140         * testsuite/23_containers/unordered_multimap/allocator/minimal.cc:
141         Likewise.
142         * testsuite/23_containers/unordered_multiset/allocator/minimal.cc:
143         Likewise.
144         * testsuite/23_containers/unordered_set/allocator/minimal.cc:
145         Likewise.
146         * testsuite/util/testsuite_allocator.h: Remove unused parameter.
148         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Re-enable on solaris.
149         * configure: Regenerate.
151 2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
153         * Makefile.in: Regenerated with automake-1.11.6.
154         * aclocal.m4: Likewise.
155         * configure: Likewise.
156         * doc/Makefile.in: Likewise.
157         * include/Makefile.in: Likewise.
158         * libsupc++/Makefile.in: Likewise.
159         * po/Makefile.in: Likewise.
160         * python/Makefile.in: Likewise.
161         * src/Makefile.in: Likewise.
162         * src/c++11/Makefile.in: Likewise.
163         * src/c++98/Makefile.in: Likewise.
164         * src/filesystem/Makefile.in: Likewise.
165         * testsuite/Makefile.in: Likewise.
167 2015-05-09  Jason Merrill  <jason@redhat.com>
169         * testsuite/20_util/headers/functional/synopsis.cc: Add
170         _GLIBCXX14_CONSTEXPR.
171         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
173 2015-05-08  Jason Merrill  <jason@redhat.com>
175         * testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Add -std=c++98.
176         * testsuite/20_util/auto_ptr/1.cc: Add -std=c++98.
177         * testsuite/20_util/auto_ptr/2.cc: Add -std=c++98.
178         * testsuite/20_util/auto_ptr/3.cc: Add -std=c++98.
179         * testsuite/20_util/auto_ptr/4.cc: Add -std=c++98.
180         * testsuite/20_util/auto_ptr/5.cc: Add -std=c++98.
181         * testsuite/20_util/auto_ptr/6.cc: Add -std=c++98.
182         * testsuite/20_util/auto_ptr/7.cc: Add -std=c++98.
183         * testsuite/20_util/auto_ptr/3946.cc: Add -std=c++98.
184         * testsuite/20_util/auto_ptr/assign_neg.cc: Add -std=c++98.
185         * testsuite/20_util/auto_ptr/requirements/explicit_instantiation/1.cc: Likewise.
186         * testsuite/20_util/headers/functional/synopsis.cc: Add -Wno-deprecated.
187         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust expected errors.
188         * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc: Likewise.
189         * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc: Likewise.
190         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise.
191         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise.
192         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: Likewise.
193         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: Likewise.
194         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Likewise.
195         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Likewise.
196         * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc: Likewise.
197         * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc: Likewise.
198         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:  Likewise.
199         * testsuite/ext/array_allocator/1.cc: Add -Wno-deprecated.
200         * testsuite/ext/array_allocator/2.cc: Add -Wno-deprecated.
201         * testsuite/ext/array_allocator/26875.cc: Add -Wno-deprecated.
202         * testsuite/ext/array_allocator/3.cc: Add -Wno-deprecated.
203         * testsuite/ext/array_allocator/check_allocate_max_size.cc: Add -Wno-deprecated.
204         * testsuite/ext/array_allocator/check_deallocate_null.cc: Add -Wno-deprecated.
205         * testsuite/ext/array_allocator/check_delete.cc: Add -Wno-deprecated.
206         * testsuite/ext/array_allocator/check_new.cc: Add -Wno-deprecated.
207         * testsuite/ext/profile/mutex_extensions_neg.cc: Prune follow-on error.
208         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc: Add -std=c++98.
209         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc: Add -std=c++98.
210         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Add -std=c++98.
211         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Add -std=c++98 -fno-show-column.
212         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc: Add -std=c++98.
213         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc: Add -std=c++98.
214         * testsuite/tr1/6_containers/utility/pair.cc: Add -std=c++98.
215         * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: Add -std=c++98.
217         * src/c++98/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
218         * src/c++98/Makefile.in: Regenerate.
219         * src/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
220         * src/Makefile.in: Regenerate.
222 2015-05-02  Jonathan Wakely  <jwakely@redhat.com>
224         PR libstdc++/51617
225         * include/std/future (async): Change default policy to launch::async.
227         * include/experimental/any (any::_Storage): Fix alignment of buffer.
228         (any::_Internal): Check alignment of type.
229         * testsuite/experimental/any/cons/aligned.cc: New.
230         * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
232         * include/experimental/iterator (ostream_joiner): Simplify by using
233         the injected-class-name and the ostream_type typedef.
235         * include/experimental/iterator: New. Define ostream_joiner.
236         * include/Makefile.am: Add new header.
237         * include/Makefile.in: Regenerate.
238         * testsuite/experimental/iterator/make_ostream_joiner.cc: New.
239         * testsuite/experimental/iterator/ostream_joiner.cc: New.
240         * testsuite/experimental/iterator/requirements.cc: New.
241         * doc/xml/manual/status_cxx2017.xml: Update status.
242         * doc/html/manual/status.html: Regenerate.
244         * include/experimental/numeric: New. Define gcd and lcm.
245         * include/Makefile.am: Add new header.
246         * include/Makefile.in: Regenerate.
247         * testsuite/experimental/numeric/gcd.cc: New.
248         * testsuite/experimental/numeric/lcm.cc: New.
249         * doc/xml/manual/status_cxx2017.xml: Update status.
250         * doc/html/manual/status.html: Regenerate.
252 2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>
254         Revert addition of feature macros from other headers per latest SD-6.
255         * include/experimental/deque: Remove feature-test macro.
256         * include/experimental/forward_list: Ditto.
257         * include/experimental/list: Ditto.
258         * include/experimental/map: Ditto.
259         * include/experimental/set: Ditto.
260         * include/experimental/string: Ditto.
261         * include/experimental/unordered_map: Ditto.
262         * include/experimental/unordered_set: Ditto.
264 2015-05-02  Jonathan Wakely  <jwakely@redhat.com>
266         * include/experimental/any (any::_Storage): Make non-copyable.
267         (any::any): Do not copy _Storage object.
268         (any::operator=): Implement more efficiently than swapping.
269         (any::swap): Use new _Op_xfer operation.
270         (any::_Op::_Op_xfer): New enumerator.
271         (_Manager_internal::_S_alloc): Remove unused function.
272         (_Manager_internal::_S_create, _Manager_external::_S_create): Use out
273         parameter instead of returning a _Storage object.
274         (_Manager_internal::_S_manage, _Manager_external::_S_manage): Add
275         _Op_xfer operation for moving and swapping.
276         * testsuite/experimental/any/cons/nontrivial.cc: New.
277         * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
279         * include/experimental/fs_path.h (filesystem_error::~filesystem_error):
280         Declare.
281         * src/filesystem/path.cc (filesystem_error::~filesystem_error):
282         Define.
284         PR libstdc++/65978
285         * include/std/tuple (forward_as_tuple, tie): Add constexpr.
286         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Uncomment
287         and fix tests for forward_as_tuple and tie.
289         * src/filesystem/ops.cc (last_write_time) [_GLIBCXX_USE_UTIMENSAT]:
290         Set timespec members explicitly instead of with a braced-init-list.
291         [_GLIBCXX_HAVE_UTIME_H]: Use lambda to handle st_atime being a macro.
293 2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>
295         * include/experimental/deque: Add feature-test macro.
296         * include/experimental/forward_list: Ditto.
297         * include/experimental/list: Ditto.
298         * include/experimental/map: Ditto.
299         * include/experimental/set: Ditto.
300         * include/experimental/string: Ditto.
301         * include/experimental/unordered_map: Ditto.
302         * include/experimental/unordered_set: Ditto.
304 2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
306         * include/experimental/memory: Correct feature-test macro.
308         * include/experimental/memory: Add feature-test macro.
309         * include/experimental/vector: Likewise.
310         * doc/xml/manual/status_cxx2017.xml: Update status.
311         * doc/html/manual/status.html: Regenerate.
313 2015-05-01  Ville Voutilainen  <ville.voutilainen@gmail.com>
315         Implement observer_ptr.
316         * include/Makefile.am: Add new header.
317         * include/Makefile.in: Regenerate.
318         * include/experimental/memory: New.
319         * testsuite/experimental/memory/observer_ptr/assignment/assign.cc: New.
320         * testsuite/experimental/memory/observer_ptr/cons/cons.cc: New.
321         * testsuite/experimental/memory/observer_ptr/hash/hash.cc: New.
322         * testsuite/experimental/memory/observer_ptr/make_observer.cc: New.
323         * testsuite/experimental/memory/observer_ptr/relops/relops.cc: New.
324         * testsuite/experimental/memory/observer_ptr/requirements.cc: New.
325         * testsuite/experimental/memory/observer_ptr/swap/swap.cc: New.
326         * testsuite/experimental/memory/observer_ptr/typedefs.cc: New.
328 2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
330         * src/filesystem/path.cc (path::compare): Do not copy strings.
332         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h>
333         is not available.
334         (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmodat.
335         * configure: Regenerate.
336         * config.h.in: Regenerate.
337         * configure.ac: Check for utime.h
338         * include/experimental/fs_path.h (path::string<>)
339         [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Remove stray typename keyword.
340         * src/filesystem/dir.cc [!_GLIBCXX_HAVE_DIRENT_H] (DIR, opendir,
341         closedir, dirent, readdir_r): Replace dummy functions with #error.
342         (native_readdir, _Dir::advance): Use readdir when readdir_r is missing.
343         * src/filesystem/ops.cc (do_stat, is_set): Make inline.
344         (last_write_time) [!_GLIBCXX_USE_UTIMENSAT]: Use utime.
345         (permissions) [!_GLIBCXX_USE_FCHMODAT]: Use chmod.
346         (space, temp_directory_path) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Set
347         error_code.
349         * include/experimental/fs_path.h (path::_List): Use vector instead of
350         list.
351         * python/libstdcxx/v6/printers.py (StdExpPathPrinter): Adapt.
352         * src/filesystem/path.cc: Use std::prev instead of decrementing
353         rvalues. Fix whitespace.
354         * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
355         Do not decrement iterators before begin.
357         * include/experimental/fs_dir.h: Fix use of non-reserved names.
358         * include/experimental/fs_ops.h: Likewise.
359         * include/experimental/fs_path.h: Likewise.
360         * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Use
361         C++11 when checking for support.
363         * include/bits/locale_classes.h (locale::facet): Delete copy
364         operations in C++11 mode.
366         * include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
368         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.
369         * configure: Regenerate.
371 2015-05-01  Edward Smith-Rowland  <3dw4rd@verizon.net>
373         Inline one-line erasure dispatch functions.
374         * include/experimental/forward_list (erase_if(), erase()): Inline.
375         * include/experimental/list (erase_if(), erase()): Inline.
376         * include/experimental/map (erase_if(*)): Inline.
377         * include/experimental/set (erase_if(*)): Inline.
378         * include/experimental/string (erase_if(), erase()): Inline.
379         * include/experimental/unordered_map (erase_if(*)): Inline.
380         * include/experimental/unordered_set (erase_if(*)): Inline.
382 2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
384         * doc/xml/manual/intro.xml: Link to new status_cxx2017.xml file.
385         * doc/xml/manual/status_cxx2011.xml: Update status tables.
386         * doc/xml/manual/status_cxx2014.xml: Likewise.
387         * doc/xml/manual/status_cxx2017.xml: New.
388         * doc/xml/manual/using.xml: Fix typo.
389         * doc/html/*: Regenerate.
391         * include/std/memory (pointer_safety, declare_reachable,
392         undeclare_reachable, declare_no_pointers, undeclare_no_pointers,
393         get_pointer_safety): Define.
394         * testsuite/20_util/pointer_safety/1.cc: New.
396 2015-04-30  Jonathan Wakely  <jwakely@redhat.com>
398         Implement N4100 File System TS
399         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Define.
400         (GLIBCXX_CHECK_FILESYSTEM_DEPS): Define.
401         * config.h.in: Regenerate.
402         * configure: Regenerate.
403         * configure.ac: Enable filesystem TS and check its dependencies.
404         * include/Makefile.am: Add new headers.
405         * include/Makefile.in: Regenerate.
406         * include/bits/locale_conv.h (__do_str_code_cvt, __str_codecvt_in,
407         __str_codecvt_out): Move code conversion logic from wstring_convert
408         into new global functions.
409         (wstring_convert::to_bytes, wstring_convert::from_bytes): Use new
410         functions.
411         (wstring_convert::_M_conv): Remove.
412         * include/bits/quoted_string.h (_Quoted_string): Split out of iomanip.
413         * include/experimental/filesystem: New.
414         * include/experimental/fs_dir.h: New.
415         * include/experimental/fs_fwd.h: New.
416         * include/experimental/fs_ops.h: New.
417         * include/experimental/fs_path.h: New.
418         * include/std/iomanip (_Quoted_string): Move to bits/quoted_string.h.
419         * python/libstdcxx/v6/printers.py (StdExpPathPrinter): Add.
420         * src/Makefile.am (SUBDIRS): Add filesystem.
421         * src/Makefile.in: Regenerate.
422         * src/filesystem/Makefile.am: New.
423         * src/filesystem/Makefile.in: New.
424         * src/filesystem/dir.cc: New.
425         * src/filesystem/ops.cc: New.
426         * src/filesystem/path.cc: New.
427         * testsuite/experimental/filesystem/operations/absolute.cc: New.
428         * testsuite/experimental/filesystem/operations/copy.cc: New.
429         * testsuite/experimental/filesystem/operations/current_path.cc: New.
430         * testsuite/experimental/filesystem/path/append/path.cc: New.
431         * testsuite/experimental/filesystem/path/assign/assign.cc: New.
432         * testsuite/experimental/filesystem/path/assign/copy.cc: New.
433         * testsuite/experimental/filesystem/path/compare/compare.cc: New.
434         * testsuite/experimental/filesystem/path/compare/path.cc: New.
435         * testsuite/experimental/filesystem/path/compare/strings.cc: New.
436         * testsuite/experimental/filesystem/path/concat/path.cc: New.
437         * testsuite/experimental/filesystem/path/concat/strings.cc: New.
438         * testsuite/experimental/filesystem/path/construct/copy.cc: New.
439         * testsuite/experimental/filesystem/path/construct/default.cc: New.
440         * testsuite/experimental/filesystem/path/construct/locale.cc: New.
441         * testsuite/experimental/filesystem/path/construct/range.cc: New.
442         * testsuite/experimental/filesystem/path/decompose/extension.cc: New.
443         * testsuite/experimental/filesystem/path/decompose/filename.cc: New.
444         * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
445         New.
446         * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
447         New.
448         * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
449         New.
450         * testsuite/experimental/filesystem/path/decompose/root_name.cc:
451         New.
452         * testsuite/experimental/filesystem/path/decompose/root_path.cc:
453         New.
454         * testsuite/experimental/filesystem/path/decompose/stem.cc: New.
455         * testsuite/experimental/filesystem/path/generic/generic_string.cc:
456         New.
457         * testsuite/experimental/filesystem/path/itr/traversal.cc: New.
458         * testsuite/experimental/filesystem/path/modifiers/clear.cc: New.
459         * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
460         New.
461         * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
462         New.
463         * testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
464         New.
465         * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
466         New.
467         * testsuite/experimental/filesystem/path/modifiers/swap.cc: New.
468         * testsuite/experimental/filesystem/path/nonmember/hash_value.cc: New.
469         * testsuite/experimental/filesystem/path/query/empty.cc: New.
470         * testsuite/experimental/filesystem/path/query/has_extension.cc: New.
471         * testsuite/experimental/filesystem/path/query/has_filename.cc: New.
472         * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
473         New.
474         * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
475         New.
476         * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
477         New.
478         * testsuite/experimental/filesystem/path/query/has_root_name.cc:
479         New.
480         * testsuite/experimental/filesystem/path/query/has_root_path.cc:
481         New.
482         * testsuite/experimental/filesystem/path/query/has_stem.cc: New.
483         * testsuite/experimental/filesystem/path/query/is_relative.cc: New.
484         * testsuite/util/testsuite_fs.h: New.
486 2015-04-30  Edward Smith-Rowland  <3dw4rd@verizon.net>
488         Add fundamentals TR container erasure.
489         * include/Makefile.am: Add new headers.
490         * include/Makefile.in: Add new headers.
491         * include/experimental/array: New.
492         * include/experimental/deque: New.
493         * include/experimental/erase_if.tcc: New.
494         * include/experimental/forward_list: New.
495         * include/experimental/list: New.
496         * include/experimental/map: New.
497         * include/experimental/set: New.
498         * include/experimental/string: New.
499         * include/experimental/unordered_map: New.
500         * include/experimental/unordered_set: New.
501         * include/experimental/vector: New.
502         * testsuite/experimental/deque/erasure.cc: New.
503         * testsuite/experimental/forward_list/erasure.cc: New.
504         * testsuite/experimental/list/erasure.cc: New.
505         * testsuite/experimental/map/erasure.cc: New.
506         * testsuite/experimental/set/erasure.cc: New.
507         * testsuite/experimental/string/erasure.cc: New.
508         * testsuite/experimental/unordered_map/erasure.cc: New.
509         * testsuite/experimental/unordered_set/erasure.cc: New.
510         * testsuite/experimental/vector/erasure.cc: New.
512 2015-04-30  François Dumont  <fdumont@gcc.gnu.org>
514         * include/bits/cpp_type_traits.h
515         (__gnu_cxx::__is_normal_iterator): Delete.
516         * include/bits/stl_algobase.h (std::__niter_base): Adapt.
517         * include/bits/stl_iterator.h (__make_reverse_iterator): New in C++11.
518         (std::__niter_base): Overloads for std::reverse_iterator,
519         __gnu_cxx::__normal_iterator and std::move_iterator.
521 2015-04-30  François Dumont  <fdumont@gcc.gnu.org>
523         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_S_n_primes):
524         Delete.
525         * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
526         Remove usage of latter and compute size of the prime numbers array
527         locally.
529 2015-04-29  Doug Evans  <dje@google.com>
531         PR libstdc++/65839
532         * python/libstdcxx/v6/xmethods.py (get_bool_type): New function.
533         Replace all lookups of "bool" with this.
534         (get_std_size_type): New function.  Replace all lookups of std::size_t
535         with this.
536         (*Worker): New method get_result_type.
537         (DequeWorkerBase.__init__): New arg val_type.  All callers updated.
538         (ListWorkerBase.__init__): New arg val_type.  All callers updated.
539         (UniquePtrGetWorker.__init__): New arg elem_type.  All callers updated.
540         Delete setting of name, enabled.
541         (UniquePtrDerefWorker.__init__): New arg elem_type.  All callers
542         updated.  Delete setting of name.
543         (UniquePtrMethodsMatcher): Rewrite for consistency with all other
544         libstdc++ xmethod matchers.
545         * testsuite/libstdc++-xmethods/array.cc: Add whatis tests.
546         * testsuite/libstdc++-xmethods/associative-containers.cc: Ditto.
547         * testsuite/libstdc++-xmethods/deque.cc: Ditto.
548         * testsuite/libstdc++-xmethods/forwardlist.cc: Ditto.
549         * testsuite/libstdc++-xmethods/list.cc: Ditto.
550         * testsuite/libstdc++-xmethods/unique_ptr.cc: Ditto.
551         * testsuite/libstdc++-xmethods/vector.cc: Ditto.
553 2015-04-29  Doug Evans  <dje@google.com>
555         Use consistent naming for value type attributes.
556         * python/libstdcxx/v6/xmethods.py (ArrayWorkerBase): Rename _valtype
557         to _val_type.
558         (ArraySizeWorker, ArrayEmptyWorker): Ditto.
559         (ArrayFrontWorker, ArrayBackWorker): Ditto.
560         (ArrayAtWorker, ArraySubscriptWorker): Ditto.
561         (DequeWorkerBase): Rename elemtype to val_type.
562         (ForwardListWorkerBase): Rename _elem_type to _val_type.
563         (ForwardListFrontWorker): Ditto.  And rename elem_address to
564         val_address.
565         (ForwardListMethodsMatcher): Rename elem_type to val_type.
566         (VectorWorkerBase): Rename _elemtype to _val_type.
568 2015-04-29  Jonathan Wakely  <jwakely@redhat.com>
570         PR libstdc++/65760
571         * include/std/functional (__check_func_return_type): Use is_same to
572         avoid using _is_convertible on incomplete types.
573         * testsuite/20_util/function/65760.cc: New.
575         PR libstdc++/64657
576         * include/bits/basic_string (basic_string::_S_copy_chars): Cast
577         expression to void.
578         * include/bits/locale_facets_nonio.tcc (money_get::_M_extract,
579         time_get::_M_extract_num, time_get::_M_extract_name,
580         time_get::_M_extract_wday_or_month): Likewise.
581         * include/bits/stl_algo.h (__includes, __replace_copy_if,
582         __is_sorted_until, __is_permutation, transform): Likewise.
583         * include/bits/stl_algobase.h (swap_ranges, __copy_move::__copy_m,
584         __equal::equal, __lexicographical_compare_impl, equal): Likewise.
585         * include/bits/stl_numeric.h (inner_product): Likewise.
586         * include/bits/stl_uninitialized.h (__uninitialized_copy_a): Likewise.
587         * testsuite/util/testsuite_iterators.h (output_iterator_wrapper,
588         input_iterator_wrapper): Declare unusable comma operator.
589         * testsuite/21_strings/basic_string/cons/char/64657.cc: New.
590         * testsuite/21_strings/basic_string/modifiers/assign/char/64657.cc:
591         New.
593 2015-04-28  Doug Evans  <dje@google.com>
595         * testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
596         Define to zero.
598 2015-04-28  Jonathan Wakely  <jwakely@redhat.com>
600         * include/bits/stl_algo.h (random_shuffle): Only define for hosted
601         implementations.
603 2015-04-28  Jonathan Wakely  <jwakely@redhat.com>
605         * Makefile.am (SUBDIRS): Move python to hosted_source.
606         * Makefile.in: Regenerate.
607         * acinclude.m4 (glibcxx_SUBDIRS): Reorder.
608         * configure: Regenerate.
610 2015-04-28  Marc Glisse  <marc.glisse@inria.fr>
612         PR libstdc++/65883
613         * include/std/limits (numeric_limits): Add missing unsigned.
615 2015-04-28  Stephan Bergmann  <sbergman@redhat.com>
617         * include/debug/vector (_Safe_vector::operator=): Add missing returns.
619 2015-04-28  Jonathan Wakely  <jwakely@redhat.com>
621         PR libstdc++/60333
622         * include/std/type_traits (__make_unsigned_selector<_Tp, false, true>):
623         Handle enumeration types larger than sizeof(long).
624         (__make_signed_selector<_Tp, false, true>): Find unsigned type then
625         make it signed.
626         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
627         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
628         Likewise.
629         * testsuite/20_util/make_signed/requirements/typedefs-3.cc: New.
630         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust
631         dg-error.
632         * testsuite/20_util/make_unsigned/requirements/typedefs-3.cc: New.
634         PR libstdc++/61645
635         * include/bits/forward_list.h (forward_list::splice_after): Add
636         noexcept.
637         * include/bits/forward_list.tcc (forward_list::splice_after):
638         Likewise.
640         PR libstdc++/65631
641         * include/bits/random.h (seed_seq) Define copy constructor and copy
642         assignment as deleted.
643         * testsuite/26_numerics/random/seed_seq/cons/65631.cc: New.
645         * libsupc++/exception (uncaught_exceptions): Add comment. Reorder #if.
646         * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
647         Use -std=gnu++1z. Check feature-test macro.
649         * include/std/type_traits (void_t): Add.
650         * testsuite/20_util/void_t/1.cc: New.
652 2015-04-28  Tim Shen  <timshen@google.com>
654         * include/bits/regex.tcc: Handle regex_constants::__polynomial.
655         * include/bits/regex_automaton.tcc: Throw exception when parsing
656         back-reference with flag __polynomial.
657         * include/bits/regex_constants.h: Add extension flag
658         syntax_option_type __polynomial.
659         * bits/regex_executor.tcc: Still let BFS process ECMAScript.
660         Alternative operation will be fixed in the coming refactoring.
661         * testsuite/28_regex/algorithms/regex_search/61424.cc: Turn
662         loose match_search_debug to use DFS only.
664 2015-04-27  Sandra Loosemore  <sandra@codesourcery.com>
666         PR libstdc++/65909
667         * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale):
668         Make the generated test program fail gracefully if the target
669         doesn't support passing command-line arguments.
671 2015-04-27  Federico Lenarduzzi  <federico.lenarduzzi@tallertechnologies.com>
672             Jonathan Wakely  <jwakely@redhat.com>
674         * libsupc++/eh_catch.cc (uncaught_exception, uncaught_exceptions):
675         Return false or zero if the library is built without exceptions.
676         * libsupc++/eh_term_handler.cc: Disable verbose terminate handler if
677         the library is built without exceptions.
679 2015-04-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
681         * config/abi/pre/gnu.ver: Fix comment.
683         Add support for std::uncaught_exceptions.
684         * acinclude.m4: Bump libtool_VERSION.
685         * config/abi/pre/gnu.ver: Export the new symbol.
686         * configure: Regenerate.
687         * libsupc++/eh_catch.cc (uncaught_exceptions): New.
688         * libsupc++/exception (uncaught_exceptions): New.
689         * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc: New.
690         * testsuite/util/testsuite_abi.cc: Add 3.4.22 as the latest version.
692 2015-04-27  Dmitry Prokoptsev  <dprokoptsev@gmail.com>
693             Michael Hanselmann  <public@hansmi.ch>
695         PR libstdc++/62258
696         * libsupc++/eh_ptr.cc (rethrow_exception): Increment count of
697         uncaught exceptions.
698         * testsuite/18_support/exception_ptr/62258.cc: New.
700 2015-04-27  Jonathan Wakely  <jwakely@redhat.com>
702         * doc/xml/manual/extensions.xml: Add cross-reference.
703         * doc/html/manual/ext_compile_checks.html: Regenerate.
705 2015-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>
707         * config/os/generic/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): Define.
708         * configure.host (os_include_dir): Set to "os/generic" for linux-musl*.
710 2015-04-22  Renlin Li  <renlin.li@arm.com>
712         * testsuite/lib/dg-options.exp (dg-require-thread-fence): New.
713         * testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New.
714         * testsuite/29_atomics/atomic_flag/clear/1.cc: Use it.
715         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
716         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.
718 2015-04-21  Jonathan Wakely  <jwakely@redhat.com>
720         * doc/xml/manual/configure.xml: Update descriptions of options
721         affecting dual ABI and add cross-references.
722         * doc/xml/manual/strings.xml: Clarify that string isn't COW now.
723         * doc/xml/manual/using.xml: Document ABI transition.
724         * doc/html/*: Regenerate.
726         * doc/xml/manual/abi.xml: Use uppercase for C++ Standard Library.
727         * doc/xml/manual/using.xml: Document newer -std options. Use better
728         examples of nested namespaces.
730 2015-04-20  Jonathan Wakely  <jwakely@redhat.com>
732         * doc/xml/manual/concurrency_extensions.xml: Update documentation
733         on atomics.
734         * doc/xml/manual/using.xml: Likewise. Improve markup.
735         * doc/html/*: Regenerate.
737 2015-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
739         * scripts/extract_symvers.pl: Ignore elfdump error output.
741 2015-04-14  Marc Glisse  <marc.glisse@inria.fr>
743         PR libstdc++/61347
744         * include/bits/stl_iterator_base_funcs.h (_List_iterator,
745         _List_const_iterator): Declare.
746         (__distance): Declare new overloads for _List_iterator and
747         _List_const_iterator.
748         * include/bits/stl_list.h (__distance): New overloads for
749         _List_iterator and _List_const_iterator.
750         * testsuite/23_containers/list/61347.cc: New testcase.
752 2015-04-14  Jonathan Wakely  <jwakely@redhat.com>
754         * doc/xml/manual/evolution.xml: Fix typos.
755         * doc/html/manual/api.html: Regenerate.
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.