* Makefile.in (GCC_WARN_CXXFLAGS): Add -std=c++98.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobc8f14d004697f4868b9090472cfbab707fc94fda
1 2015-05-17  François Dumont  <fdumont@gcc.gnu.org>
3         * include/bits/unordered_map.h (unordered_map, unordered_multimap): Add
4         missing constructors.
5         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
6         Likewise.
7         * include/debug/unordered_map (unordered_map, unordered_multimap): Add
8         missing constructors.
9         * include/debug/unordered_set (unordered_set, unordered_multiset):
10         Likewise.
11         * include/profile/unordered_map (unordered_map, unordered_multimap): Add
12         missing constructors.
13         * include/profile/unordered_set (unordered_set, unordered_multiset):
14         Likewise.
15         * testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
16         invocations.
17         * testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
18         * testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
19         * testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.
21 2015-05-15  Jonathan Wakely  <jwakely@redhat.com>
23         * src/filesystem/ops.cc (stat_type): Define alias for struct stat and
24         use throughout the file.
25         (make_file_type): New function.
26         (file_size(const path&, error_code&)): Report an error for anything
27         that isn't a regular file.
28         (status(const path&), symlink_status(const path&)): Do not throw for
29         file_type::not_found.
30         (temp_directory_path()): Check additional environment variables.
31         * testsuite/experimental/filesystem/operations/exists.cc: New.
32         * testsuite/experimental/filesystem/operations/file_size.cc: New.
33         * testsuite/experimental/filesystem/operations/status.cc: New.
34         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
35         New.
37 2015-05-14  Nathan Myers  <ncm@cantrip.org>
38             Jonathan Wakely  <jwakely@redhat.com>
40         PR libstdc++/66055
41         * include/std/unordered_map (unordered_map, unordered_multimap): Add
42         missing constructors.
43         * include/std/unordered_set (unordered_set, unordered_multiset):
44         Likewise.
45         * testsuite/23_containers/unordered_map/cons/66055.cc: New.
46         * testsuite/23_containers/unordered_multimap/cons/66055.cc: New.
47         * testsuite/23_containers/unordered_multiset/cons/66055.cc: New.
48         * testsuite/23_containers/unordered_set/cons/66055.cc: New.
50 2015-05-14  Jonathan Wakely  <jwakely@redhat.com>
52         PR libstdc++/66011
53         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmod and
54         sendfile.
55         * config.h.in: Regenerate.
56         * configure: Regenerate.
57         * src/filesystem/ops.cc (do_copy_file): Fix arguments to open(). Do
58         not return after copying contents. Use fchmod, fchmodat, and sendfile
59         when available.
60         (current_path, permissions, space): Use errno not return value.
62         PR libstdc++/66018
63         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for struct
64         dirent.d_type.
65         * config.h.in: Regenerate.
66         * configure: Regenerate.
67         * configure.ac (AC_STRUCT_DIRENT_D_TYPE): Remove.
69 2015-05-13  Eric Botcazou  <ebotcazou@adacore.com>
71         * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Delete.
72         * configure.ac: Remove GLIBCXX_ENABLE_SJLJ_EXCEPTIONS.
73         * config.h.in: Regenerate.
74         * configure: Likewise.
75         * libsupc++/eh_personality.cc: Replace _GLIBCXX_SJLJ_EXCEPTIONS by
76         __USING_SJLJ_EXCEPTIONS__.
77         * libsupc++/eh_throw.cc: Likewise.
78         * libsupc++/eh_ptr.cc: Likewise.
79         * doc/html/manual/appendix_porting.html: Remove
80         GLIBCXX_ENABLE_SJLJ_EXCEPTIONS
81         * doc/xml/manual/build_hacking.xml: Likewise.
82         * doc/html/manual/configure.html: Remove --enable-sjlj-exceptions.
83         * doc/xml/manual/configure.xml: Likewise.
85 2015-05-13  Jonathan Wakely  <jwakely@redhat.com>
87         * include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)): Check
88         for nullptr (LWG 2415).
89         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Test
90         construction from empty unique_ptr.
91         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
92         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
94         * include/bits/stl_raw_storage_iter.h (raw_storage_iterator::base()):
95         Define (LWG 2454).
96         * testsuite/20_util/raw_storage_iterator/base.cc: New.
98         * include/std/future (packaged_task(allocator_arg_t, const A&, F&&):
99         Remove explicit (LWG 2407).
101         * include/bits/basic_string.h (basic_string::basic_string()): Make
102         noexcept conditional on allocator (LWG 2455).
104         * include/std/complex (polar): Check for negative rho (LWG 2459).
106         * include/experimental/tuple (apply): Handle pointers to member (LWG
107         2418).
108         * include/std/functional (_Mem_fn_base): Make constructors constexpr.
109         (_Maybe_wrap_member_pointer::__do_wrap): Make constexpr.
110         * testsuite/experimental/tuple/apply.cc: Test pointer to member.
112         * include/bits/random.h (seed_seq): More noexcept (LWG 2440).
114         * include/bits/alloc_traits.h (_S_max_size): Implement LWG 2466.
115         * testsuite/20_util/allocator_traits/members/max_size.cc: Adjust.
116         * testsuite/23_containers/forward_list/allocator/minimal.cc:
117         Likewise.
118         * testsuite/23_containers/map/allocator/minimal.cc: Likewise.
119         * testsuite/23_containers/multimap/allocator/minimal.cc: Likewise.
120         * testsuite/23_containers/multiset/allocator/minimal.cc: Likewise.
121         * testsuite/23_containers/set/allocator/minimal.cc: Likewise.
122         * testsuite/23_containers/unordered_map/allocator/minimal.cc:
123         Likewise.
124         * testsuite/23_containers/unordered_multimap/allocator/minimal.cc:
125         Likewise.
126         * testsuite/23_containers/unordered_multiset/allocator/minimal.cc:
127         Likewise.
128         * testsuite/23_containers/unordered_set/allocator/minimal.cc:
129         Likewise.
130         * testsuite/util/testsuite_allocator.h: Remove unused parameter.
132         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Re-enable on solaris.
133         * configure: Regenerate.
135 2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
137         * Makefile.in: Regenerated with automake-1.11.6.
138         * aclocal.m4: Likewise.
139         * configure: Likewise.
140         * doc/Makefile.in: Likewise.
141         * include/Makefile.in: Likewise.
142         * libsupc++/Makefile.in: Likewise.
143         * po/Makefile.in: Likewise.
144         * python/Makefile.in: Likewise.
145         * src/Makefile.in: Likewise.
146         * src/c++11/Makefile.in: Likewise.
147         * src/c++98/Makefile.in: Likewise.
148         * src/filesystem/Makefile.in: Likewise.
149         * testsuite/Makefile.in: Likewise.
151 2015-05-09  Jason Merrill  <jason@redhat.com>
153         * testsuite/20_util/headers/functional/synopsis.cc: Add
154         _GLIBCXX14_CONSTEXPR.
155         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
157 2015-05-08  Jason Merrill  <jason@redhat.com>
159         * testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Add -std=c++98.
160         * testsuite/20_util/auto_ptr/1.cc: Add -std=c++98.
161         * testsuite/20_util/auto_ptr/2.cc: Add -std=c++98.
162         * testsuite/20_util/auto_ptr/3.cc: Add -std=c++98.
163         * testsuite/20_util/auto_ptr/4.cc: Add -std=c++98.
164         * testsuite/20_util/auto_ptr/5.cc: Add -std=c++98.
165         * testsuite/20_util/auto_ptr/6.cc: Add -std=c++98.
166         * testsuite/20_util/auto_ptr/7.cc: Add -std=c++98.
167         * testsuite/20_util/auto_ptr/3946.cc: Add -std=c++98.
168         * testsuite/20_util/auto_ptr/assign_neg.cc: Add -std=c++98.
169         * testsuite/20_util/auto_ptr/requirements/explicit_instantiation/1.cc: Likewise.
170         * testsuite/20_util/headers/functional/synopsis.cc: Add -Wno-deprecated.
171         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust expected errors.
172         * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc: Likewise.
173         * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc: Likewise.
174         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise.
175         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise.
176         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: Likewise.
177         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: Likewise.
178         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Likewise.
179         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Likewise.
180         * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc: Likewise.
181         * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc: Likewise.
182         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:  Likewise.
183         * testsuite/ext/array_allocator/1.cc: Add -Wno-deprecated.
184         * testsuite/ext/array_allocator/2.cc: Add -Wno-deprecated.
185         * testsuite/ext/array_allocator/26875.cc: Add -Wno-deprecated.
186         * testsuite/ext/array_allocator/3.cc: Add -Wno-deprecated.
187         * testsuite/ext/array_allocator/check_allocate_max_size.cc: Add -Wno-deprecated.
188         * testsuite/ext/array_allocator/check_deallocate_null.cc: Add -Wno-deprecated.
189         * testsuite/ext/array_allocator/check_delete.cc: Add -Wno-deprecated.
190         * testsuite/ext/array_allocator/check_new.cc: Add -Wno-deprecated.
191         * testsuite/ext/profile/mutex_extensions_neg.cc: Prune follow-on error.
192         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc: Add -std=c++98.
193         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc: Add -std=c++98.
194         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Add -std=c++98.
195         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Add -std=c++98 -fno-show-column.
196         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc: Add -std=c++98.
197         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc: Add -std=c++98.
198         * testsuite/tr1/6_containers/utility/pair.cc: Add -std=c++98.
199         * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: Add -std=c++98.
201         * src/c++98/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
202         * src/c++98/Makefile.in: Regenerate.
203         * src/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
204         * src/Makefile.in: Regenerate.
206 2015-05-02  Jonathan Wakely  <jwakely@redhat.com>
208         PR libstdc++/51617
209         * include/std/future (async): Change default policy to launch::async.
211         * include/experimental/any (any::_Storage): Fix alignment of buffer.
212         (any::_Internal): Check alignment of type.
213         * testsuite/experimental/any/cons/aligned.cc: New.
214         * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
216         * include/experimental/iterator (ostream_joiner): Simplify by using
217         the injected-class-name and the ostream_type typedef.
219         * include/experimental/iterator: New. Define ostream_joiner.
220         * include/Makefile.am: Add new header.
221         * include/Makefile.in: Regenerate.
222         * testsuite/experimental/iterator/make_ostream_joiner.cc: New.
223         * testsuite/experimental/iterator/ostream_joiner.cc: New.
224         * testsuite/experimental/iterator/requirements.cc: New.
225         * doc/xml/manual/status_cxx2017.xml: Update status.
226         * doc/html/manual/status.html: Regenerate.
228         * include/experimental/numeric: New. Define gcd and lcm.
229         * include/Makefile.am: Add new header.
230         * include/Makefile.in: Regenerate.
231         * testsuite/experimental/numeric/gcd.cc: New.
232         * testsuite/experimental/numeric/lcm.cc: New.
233         * doc/xml/manual/status_cxx2017.xml: Update status.
234         * doc/html/manual/status.html: Regenerate.
236 2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>
238         Revert addition of feature macros from other headers per latest SD-6.
239         * include/experimental/deque: Remove feature-test macro.
240         * include/experimental/forward_list: Ditto.
241         * include/experimental/list: Ditto.
242         * include/experimental/map: Ditto.
243         * include/experimental/set: Ditto.
244         * include/experimental/string: Ditto.
245         * include/experimental/unordered_map: Ditto.
246         * include/experimental/unordered_set: Ditto.
248 2015-05-02  Jonathan Wakely  <jwakely@redhat.com>
250         * include/experimental/any (any::_Storage): Make non-copyable.
251         (any::any): Do not copy _Storage object.
252         (any::operator=): Implement more efficiently than swapping.
253         (any::swap): Use new _Op_xfer operation.
254         (any::_Op::_Op_xfer): New enumerator.
255         (_Manager_internal::_S_alloc): Remove unused function.
256         (_Manager_internal::_S_create, _Manager_external::_S_create): Use out
257         parameter instead of returning a _Storage object.
258         (_Manager_internal::_S_manage, _Manager_external::_S_manage): Add
259         _Op_xfer operation for moving and swapping.
260         * testsuite/experimental/any/cons/nontrivial.cc: New.
261         * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
263         * include/experimental/fs_path.h (filesystem_error::~filesystem_error):
264         Declare.
265         * src/filesystem/path.cc (filesystem_error::~filesystem_error):
266         Define.
268         PR libstdc++/65978
269         * include/std/tuple (forward_as_tuple, tie): Add constexpr.
270         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Uncomment
271         and fix tests for forward_as_tuple and tie.
273         * src/filesystem/ops.cc (last_write_time) [_GLIBCXX_USE_UTIMENSAT]:
274         Set timespec members explicitly instead of with a braced-init-list.
275         [_GLIBCXX_HAVE_UTIME_H]: Use lambda to handle st_atime being a macro.
277 2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>
279         * include/experimental/deque: Add feature-test macro.
280         * include/experimental/forward_list: Ditto.
281         * include/experimental/list: Ditto.
282         * include/experimental/map: Ditto.
283         * include/experimental/set: Ditto.
284         * include/experimental/string: Ditto.
285         * include/experimental/unordered_map: Ditto.
286         * include/experimental/unordered_set: Ditto.
288 2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
290         * include/experimental/memory: Correct feature-test macro.
292         * include/experimental/memory: Add feature-test macro.
293         * include/experimental/vector: Likewise.
294         * doc/xml/manual/status_cxx2017.xml: Update status.
295         * doc/html/manual/status.html: Regenerate.
297 2015-05-01  Ville Voutilainen  <ville.voutilainen@gmail.com>
299         Implement observer_ptr.
300         * include/Makefile.am: Add new header.
301         * include/Makefile.in: Regenerate.
302         * include/experimental/memory: New.
303         * testsuite/experimental/memory/observer_ptr/assignment/assign.cc: New.
304         * testsuite/experimental/memory/observer_ptr/cons/cons.cc: New.
305         * testsuite/experimental/memory/observer_ptr/hash/hash.cc: New.
306         * testsuite/experimental/memory/observer_ptr/make_observer.cc: New.
307         * testsuite/experimental/memory/observer_ptr/relops/relops.cc: New.
308         * testsuite/experimental/memory/observer_ptr/requirements.cc: New.
309         * testsuite/experimental/memory/observer_ptr/swap/swap.cc: New.
310         * testsuite/experimental/memory/observer_ptr/typedefs.cc: New.
312 2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
314         * src/filesystem/path.cc (path::compare): Do not copy strings.
316         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h>
317         is not available.
318         (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmodat.
319         * configure: Regenerate.
320         * config.h.in: Regenerate.
321         * configure.ac: Check for utime.h
322         * include/experimental/fs_path.h (path::string<>)
323         [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Remove stray typename keyword.
324         * src/filesystem/dir.cc [!_GLIBCXX_HAVE_DIRENT_H] (DIR, opendir,
325         closedir, dirent, readdir_r): Replace dummy functions with #error.
326         (native_readdir, _Dir::advance): Use readdir when readdir_r is missing.
327         * src/filesystem/ops.cc (do_stat, is_set): Make inline.
328         (last_write_time) [!_GLIBCXX_USE_UTIMENSAT]: Use utime.
329         (permissions) [!_GLIBCXX_USE_FCHMODAT]: Use chmod.
330         (space, temp_directory_path) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Set
331         error_code.
333         * include/experimental/fs_path.h (path::_List): Use vector instead of
334         list.
335         * python/libstdcxx/v6/printers.py (StdExpPathPrinter): Adapt.
336         * src/filesystem/path.cc: Use std::prev instead of decrementing
337         rvalues. Fix whitespace.
338         * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
339         Do not decrement iterators before begin.
341         * include/experimental/fs_dir.h: Fix use of non-reserved names.
342         * include/experimental/fs_ops.h: Likewise.
343         * include/experimental/fs_path.h: Likewise.
344         * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Use
345         C++11 when checking for support.
347         * include/bits/locale_classes.h (locale::facet): Delete copy
348         operations in C++11 mode.
350         * include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
352         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.
353         * configure: Regenerate.
355 2015-05-01  Edward Smith-Rowland  <3dw4rd@verizon.net>
357         Inline one-line erasure dispatch functions.
358         * include/experimental/forward_list (erase_if(), erase()): Inline.
359         * include/experimental/list (erase_if(), erase()): Inline.
360         * include/experimental/map (erase_if(*)): Inline.
361         * include/experimental/set (erase_if(*)): Inline.
362         * include/experimental/string (erase_if(), erase()): Inline.
363         * include/experimental/unordered_map (erase_if(*)): Inline.
364         * include/experimental/unordered_set (erase_if(*)): Inline.
366 2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
368         * doc/xml/manual/intro.xml: Link to new status_cxx2017.xml file.
369         * doc/xml/manual/status_cxx2011.xml: Update status tables.
370         * doc/xml/manual/status_cxx2014.xml: Likewise.
371         * doc/xml/manual/status_cxx2017.xml: New.
372         * doc/xml/manual/using.xml: Fix typo.
373         * doc/html/*: Regenerate.
375         * include/std/memory (pointer_safety, declare_reachable,
376         undeclare_reachable, declare_no_pointers, undeclare_no_pointers,
377         get_pointer_safety): Define.
378         * testsuite/20_util/pointer_safety/1.cc: New.
380 2015-04-30  Jonathan Wakely  <jwakely@redhat.com>
382         Implement N4100 File System TS
383         * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Define.
384         (GLIBCXX_CHECK_FILESYSTEM_DEPS): Define.
385         * config.h.in: Regenerate.
386         * configure: Regenerate.
387         * configure.ac: Enable filesystem TS and check its dependencies.
388         * include/Makefile.am: Add new headers.
389         * include/Makefile.in: Regenerate.
390         * include/bits/locale_conv.h (__do_str_code_cvt, __str_codecvt_in,
391         __str_codecvt_out): Move code conversion logic from wstring_convert
392         into new global functions.
393         (wstring_convert::to_bytes, wstring_convert::from_bytes): Use new
394         functions.
395         (wstring_convert::_M_conv): Remove.
396         * include/bits/quoted_string.h (_Quoted_string): Split out of iomanip.
397         * include/experimental/filesystem: New.
398         * include/experimental/fs_dir.h: New.
399         * include/experimental/fs_fwd.h: New.
400         * include/experimental/fs_ops.h: New.
401         * include/experimental/fs_path.h: New.
402         * include/std/iomanip (_Quoted_string): Move to bits/quoted_string.h.
403         * python/libstdcxx/v6/printers.py (StdExpPathPrinter): Add.
404         * src/Makefile.am (SUBDIRS): Add filesystem.
405         * src/Makefile.in: Regenerate.
406         * src/filesystem/Makefile.am: New.
407         * src/filesystem/Makefile.in: New.
408         * src/filesystem/dir.cc: New.
409         * src/filesystem/ops.cc: New.
410         * src/filesystem/path.cc: New.
411         * testsuite/experimental/filesystem/operations/absolute.cc: New.
412         * testsuite/experimental/filesystem/operations/copy.cc: New.
413         * testsuite/experimental/filesystem/operations/current_path.cc: New.
414         * testsuite/experimental/filesystem/path/append/path.cc: New.
415         * testsuite/experimental/filesystem/path/assign/assign.cc: New.
416         * testsuite/experimental/filesystem/path/assign/copy.cc: New.
417         * testsuite/experimental/filesystem/path/compare/compare.cc: New.
418         * testsuite/experimental/filesystem/path/compare/path.cc: New.
419         * testsuite/experimental/filesystem/path/compare/strings.cc: New.
420         * testsuite/experimental/filesystem/path/concat/path.cc: New.
421         * testsuite/experimental/filesystem/path/concat/strings.cc: New.
422         * testsuite/experimental/filesystem/path/construct/copy.cc: New.
423         * testsuite/experimental/filesystem/path/construct/default.cc: New.
424         * testsuite/experimental/filesystem/path/construct/locale.cc: New.
425         * testsuite/experimental/filesystem/path/construct/range.cc: New.
426         * testsuite/experimental/filesystem/path/decompose/extension.cc: New.
427         * testsuite/experimental/filesystem/path/decompose/filename.cc: New.
428         * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
429         New.
430         * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
431         New.
432         * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
433         New.
434         * testsuite/experimental/filesystem/path/decompose/root_name.cc:
435         New.
436         * testsuite/experimental/filesystem/path/decompose/root_path.cc:
437         New.
438         * testsuite/experimental/filesystem/path/decompose/stem.cc: New.
439         * testsuite/experimental/filesystem/path/generic/generic_string.cc:
440         New.
441         * testsuite/experimental/filesystem/path/itr/traversal.cc: New.
442         * testsuite/experimental/filesystem/path/modifiers/clear.cc: New.
443         * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
444         New.
445         * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
446         New.
447         * testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
448         New.
449         * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
450         New.
451         * testsuite/experimental/filesystem/path/modifiers/swap.cc: New.
452         * testsuite/experimental/filesystem/path/nonmember/hash_value.cc: New.
453         * testsuite/experimental/filesystem/path/query/empty.cc: New.
454         * testsuite/experimental/filesystem/path/query/has_extension.cc: New.
455         * testsuite/experimental/filesystem/path/query/has_filename.cc: New.
456         * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
457         New.
458         * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
459         New.
460         * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
461         New.
462         * testsuite/experimental/filesystem/path/query/has_root_name.cc:
463         New.
464         * testsuite/experimental/filesystem/path/query/has_root_path.cc:
465         New.
466         * testsuite/experimental/filesystem/path/query/has_stem.cc: New.
467         * testsuite/experimental/filesystem/path/query/is_relative.cc: New.
468         * testsuite/util/testsuite_fs.h: New.
470 2015-04-30  Edward Smith-Rowland  <3dw4rd@verizon.net>
472         Add fundamentals TR container erasure.
473         * include/Makefile.am: Add new headers.
474         * include/Makefile.in: Add new headers.
475         * include/experimental/array: New.
476         * include/experimental/deque: New.
477         * include/experimental/erase_if.tcc: New.
478         * include/experimental/forward_list: New.
479         * include/experimental/list: New.
480         * include/experimental/map: New.
481         * include/experimental/set: New.
482         * include/experimental/string: New.
483         * include/experimental/unordered_map: New.
484         * include/experimental/unordered_set: New.
485         * include/experimental/vector: New.
486         * testsuite/experimental/deque/erasure.cc: New.
487         * testsuite/experimental/forward_list/erasure.cc: New.
488         * testsuite/experimental/list/erasure.cc: New.
489         * testsuite/experimental/map/erasure.cc: New.
490         * testsuite/experimental/set/erasure.cc: New.
491         * testsuite/experimental/string/erasure.cc: New.
492         * testsuite/experimental/unordered_map/erasure.cc: New.
493         * testsuite/experimental/unordered_set/erasure.cc: New.
494         * testsuite/experimental/vector/erasure.cc: New.
496 2015-04-30  François Dumont  <fdumont@gcc.gnu.org>
498         * include/bits/cpp_type_traits.h
499         (__gnu_cxx::__is_normal_iterator): Delete.
500         * include/bits/stl_algobase.h (std::__niter_base): Adapt.
501         * include/bits/stl_iterator.h (__make_reverse_iterator): New in C++11.
502         (std::__niter_base): Overloads for std::reverse_iterator,
503         __gnu_cxx::__normal_iterator and std::move_iterator.
505 2015-04-30  François Dumont  <fdumont@gcc.gnu.org>
507         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_S_n_primes):
508         Delete.
509         * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
510         Remove usage of latter and compute size of the prime numbers array
511         locally.
513 2015-04-29  Doug Evans  <dje@google.com>
515         PR libstdc++/65839
516         * python/libstdcxx/v6/xmethods.py (get_bool_type): New function.
517         Replace all lookups of "bool" with this.
518         (get_std_size_type): New function.  Replace all lookups of std::size_t
519         with this.
520         (*Worker): New method get_result_type.
521         (DequeWorkerBase.__init__): New arg val_type.  All callers updated.
522         (ListWorkerBase.__init__): New arg val_type.  All callers updated.
523         (UniquePtrGetWorker.__init__): New arg elem_type.  All callers updated.
524         Delete setting of name, enabled.
525         (UniquePtrDerefWorker.__init__): New arg elem_type.  All callers
526         updated.  Delete setting of name.
527         (UniquePtrMethodsMatcher): Rewrite for consistency with all other
528         libstdc++ xmethod matchers.
529         * testsuite/libstdc++-xmethods/array.cc: Add whatis tests.
530         * testsuite/libstdc++-xmethods/associative-containers.cc: Ditto.
531         * testsuite/libstdc++-xmethods/deque.cc: Ditto.
532         * testsuite/libstdc++-xmethods/forwardlist.cc: Ditto.
533         * testsuite/libstdc++-xmethods/list.cc: Ditto.
534         * testsuite/libstdc++-xmethods/unique_ptr.cc: Ditto.
535         * testsuite/libstdc++-xmethods/vector.cc: Ditto.
537 2015-04-29  Doug Evans  <dje@google.com>
539         Use consistent naming for value type attributes.
540         * python/libstdcxx/v6/xmethods.py (ArrayWorkerBase): Rename _valtype
541         to _val_type.
542         (ArraySizeWorker, ArrayEmptyWorker): Ditto.
543         (ArrayFrontWorker, ArrayBackWorker): Ditto.
544         (ArrayAtWorker, ArraySubscriptWorker): Ditto.
545         (DequeWorkerBase): Rename elemtype to val_type.
546         (ForwardListWorkerBase): Rename _elem_type to _val_type.
547         (ForwardListFrontWorker): Ditto.  And rename elem_address to
548         val_address.
549         (ForwardListMethodsMatcher): Rename elem_type to val_type.
550         (VectorWorkerBase): Rename _elemtype to _val_type.
552 2015-04-29  Jonathan Wakely  <jwakely@redhat.com>
554         PR libstdc++/65760
555         * include/std/functional (__check_func_return_type): Use is_same to
556         avoid using _is_convertible on incomplete types.
557         * testsuite/20_util/function/65760.cc: New.
559         PR libstdc++/64657
560         * include/bits/basic_string (basic_string::_S_copy_chars): Cast
561         expression to void.
562         * include/bits/locale_facets_nonio.tcc (money_get::_M_extract,
563         time_get::_M_extract_num, time_get::_M_extract_name,
564         time_get::_M_extract_wday_or_month): Likewise.
565         * include/bits/stl_algo.h (__includes, __replace_copy_if,
566         __is_sorted_until, __is_permutation, transform): Likewise.
567         * include/bits/stl_algobase.h (swap_ranges, __copy_move::__copy_m,
568         __equal::equal, __lexicographical_compare_impl, equal): Likewise.
569         * include/bits/stl_numeric.h (inner_product): Likewise.
570         * include/bits/stl_uninitialized.h (__uninitialized_copy_a): Likewise.
571         * testsuite/util/testsuite_iterators.h (output_iterator_wrapper,
572         input_iterator_wrapper): Declare unusable comma operator.
573         * testsuite/21_strings/basic_string/cons/char/64657.cc: New.
574         * testsuite/21_strings/basic_string/modifiers/assign/char/64657.cc:
575         New.
577 2015-04-28  Doug Evans  <dje@google.com>
579         * testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
580         Define to zero.
582 2015-04-28  Jonathan Wakely  <jwakely@redhat.com>
584         * include/bits/stl_algo.h (random_shuffle): Only define for hosted
585         implementations.
587 2015-04-28  Jonathan Wakely  <jwakely@redhat.com>
589         * Makefile.am (SUBDIRS): Move python to hosted_source.
590         * Makefile.in: Regenerate.
591         * acinclude.m4 (glibcxx_SUBDIRS): Reorder.
592         * configure: Regenerate.
594 2015-04-28  Marc Glisse  <marc.glisse@inria.fr>
596         PR libstdc++/65883
597         * include/std/limits (numeric_limits): Add missing unsigned.
599 2015-04-28  Stephan Bergmann  <sbergman@redhat.com>
601         * include/debug/vector (_Safe_vector::operator=): Add missing returns.
603 2015-04-28  Jonathan Wakely  <jwakely@redhat.com>
605         PR libstdc++/60333
606         * include/std/type_traits (__make_unsigned_selector<_Tp, false, true>):
607         Handle enumeration types larger than sizeof(long).
608         (__make_signed_selector<_Tp, false, true>): Find unsigned type then
609         make it signed.
610         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
611         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
612         Likewise.
613         * testsuite/20_util/make_signed/requirements/typedefs-3.cc: New.
614         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust
615         dg-error.
616         * testsuite/20_util/make_unsigned/requirements/typedefs-3.cc: New.
618         PR libstdc++/61645
619         * include/bits/forward_list.h (forward_list::splice_after): Add
620         noexcept.
621         * include/bits/forward_list.tcc (forward_list::splice_after):
622         Likewise.
624         PR libstdc++/65631
625         * include/bits/random.h (seed_seq) Define copy constructor and copy
626         assignment as deleted.
627         * testsuite/26_numerics/random/seed_seq/cons/65631.cc: New.
629         * libsupc++/exception (uncaught_exceptions): Add comment. Reorder #if.
630         * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
631         Use -std=gnu++1z. Check feature-test macro.
633         * include/std/type_traits (void_t): Add.
634         * testsuite/20_util/void_t/1.cc: New.
636 2015-04-28  Tim Shen  <timshen@google.com>
638         * include/bits/regex.tcc: Handle regex_constants::__polynomial.
639         * include/bits/regex_automaton.tcc: Throw exception when parsing
640         back-reference with flag __polynomial.
641         * include/bits/regex_constants.h: Add extension flag
642         syntax_option_type __polynomial.
643         * bits/regex_executor.tcc: Still let BFS process ECMAScript.
644         Alternative operation will be fixed in the coming refactoring.
645         * testsuite/28_regex/algorithms/regex_search/61424.cc: Turn
646         loose match_search_debug to use DFS only.
648 2015-04-27  Sandra Loosemore  <sandra@codesourcery.com>
650         PR libstdc++/65909
651         * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale):
652         Make the generated test program fail gracefully if the target
653         doesn't support passing command-line arguments.
655 2015-04-27  Federico Lenarduzzi  <federico.lenarduzzi@tallertechnologies.com>
656             Jonathan Wakely  <jwakely@redhat.com>
658         * libsupc++/eh_catch.cc (uncaught_exception, uncaught_exceptions):
659         Return false or zero if the library is built without exceptions.
660         * libsupc++/eh_term_handler.cc: Disable verbose terminate handler if
661         the library is built without exceptions.
663 2015-04-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
665         * config/abi/pre/gnu.ver: Fix comment.
667         Add support for std::uncaught_exceptions.
668         * acinclude.m4: Bump libtool_VERSION.
669         * config/abi/pre/gnu.ver: Export the new symbol.
670         * configure: Regenerate.
671         * libsupc++/eh_catch.cc (uncaught_exceptions): New.
672         * libsupc++/exception (uncaught_exceptions): New.
673         * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc: New.
674         * testsuite/util/testsuite_abi.cc: Add 3.4.22 as the latest version.
676 2015-04-27  Dmitry Prokoptsev  <dprokoptsev@gmail.com>
677             Michael Hanselmann  <public@hansmi.ch>
679         PR libstdc++/62258
680         * libsupc++/eh_ptr.cc (rethrow_exception): Increment count of
681         uncaught exceptions.
682         * testsuite/18_support/exception_ptr/62258.cc: New.
684 2015-04-27  Jonathan Wakely  <jwakely@redhat.com>
686         * doc/xml/manual/extensions.xml: Add cross-reference.
687         * doc/html/manual/ext_compile_checks.html: Regenerate.
689 2015-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>
691         * config/os/generic/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): Define.
692         * configure.host (os_include_dir): Set to "os/generic" for linux-musl*.
694 2015-04-22  Renlin Li  <renlin.li@arm.com>
696         * testsuite/lib/dg-options.exp (dg-require-thread-fence): New.
697         * testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New.
698         * testsuite/29_atomics/atomic_flag/clear/1.cc: Use it.
699         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
700         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.
702 2015-04-21  Jonathan Wakely  <jwakely@redhat.com>
704         * doc/xml/manual/configure.xml: Update descriptions of options
705         affecting dual ABI and add cross-references.
706         * doc/xml/manual/strings.xml: Clarify that string isn't COW now.
707         * doc/xml/manual/using.xml: Document ABI transition.
708         * doc/html/*: Regenerate.
710         * doc/xml/manual/abi.xml: Use uppercase for C++ Standard Library.
711         * doc/xml/manual/using.xml: Document newer -std options. Use better
712         examples of nested namespaces.
714 2015-04-20  Jonathan Wakely  <jwakely@redhat.com>
716         * doc/xml/manual/concurrency_extensions.xml: Update documentation
717         on atomics.
718         * doc/xml/manual/using.xml: Likewise. Improve markup.
719         * doc/html/*: Regenerate.
721 2015-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
723         * scripts/extract_symvers.pl: Ignore elfdump error output.
725 2015-04-14  Marc Glisse  <marc.glisse@inria.fr>
727         PR libstdc++/61347
728         * include/bits/stl_iterator_base_funcs.h (_List_iterator,
729         _List_const_iterator): Declare.
730         (__distance): Declare new overloads for _List_iterator and
731         _List_const_iterator.
732         * include/bits/stl_list.h (__distance): New overloads for
733         _List_iterator and _List_const_iterator.
734         * testsuite/23_containers/list/61347.cc: New testcase.
736 2015-04-14  Jonathan Wakely  <jwakely@redhat.com>
738         * doc/xml/manual/evolution.xml: Fix typos.
739         * doc/html/manual/api.html: Regenerate.
741 2015-04-14  Hans-Peter Nilsson  <hp@axis.com>
743         * testsuite/29_atomics/atomic/62259.cc: Assert atomic
744         alignment is larger-equal, not equal, to default alignment.
746 2015-04-13  Jonathan Wakely  <jwakely@redhat.com>
748         PR libstdc++/65754
749         * config/abi/pre/gnu.ver: Export base object constructors for
750         fstreams.
751         * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
752         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
753         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
754         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
755         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
756         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
757         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
758         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
759         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
760         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
761         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
762         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
763         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
764         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
765         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
766         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
767         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
768         * testsuite/27_io/basic_fstream/cons/base.cc: New.
770 2015-04-13  Jonathan Wakely  <jwakely@redhat.com>
772         * doc/xml/manual/evolution.xml: Document changes since 4.5 release.
773         * doc/html/*: Regenerate.
775 2015-04-12  Uros Bizjak  <ubizjak@gmail.com>
777         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
779 2015-04-10  Andreas Schwab  <schwab@linux-m68k.org>
781         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
783         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
785 2015-04-10  Jonathan Wakely  <jwakely@redhat.com>
787         * doc/xml/manual/test.xml: Improve documentation on running a subset
788         of tests.
789         * doc/html/manual/test.html: Regenerate.
791 2015-04-10  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
793         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
794         for GCC 5.1 release.
795         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
796         Likewise.
798 2015-04-10  Jonathan Wakely  <jwakely@redhat.com>
800         * include/std/shared_mutex (shared_timed_mutex): Add comments to
801         explain the logic in the non-pthread_rwlock_t version.
802         (_Mutex): Remove redundant type.
803         (_M_n_readers): Rename to _S_max_readers.
804         (_M_write_entered, _M_readers): New convenience functions.
805         (lock, lock_shared, try_lock_shared, unlock_shared): Use convenience
806         functions. Use predicates with condition variables. Simplify bitwise
807         operations.
808         (try_lock_for, try_shared_lock_for): Convert duration to time_point
809         and call try_lock_until or try_shared_lock_until respectively.
810         (try_lock_until, try_shared_lock_until): Wait on the condition
811         variables until the specified time passes.
812         (unlock): Add Debug Mode assertion.
813         (unlock_shared): Add Debug Mode assertion.
814         * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: New.
816         * include/std/shared_mutex (shared_timed_mutex): Only use
817         pthread_rwlock_t when the POSIX Timeouts option is supported.
818         * testsuite/30_threads/shared_lock/cons/5.cc: Remove
819         dg-require-gthreads-timed.
820         * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
821         * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
822         * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
824 2015-04-09  H.J. Lu  <hongjiu.lu@intel.com>
826         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
828 2015-04-09  Jonathan Wakely  <jwakely@redhat.com>
829             Richard Henderson  <rth@redhat.com>
831         PR libstdc++/65147
832         * include/bits/atomic_base.h (__atomic_base<_ITp>): Increase
833         alignment.
834         * include/std/atomic (atomic): For types with a power of two size set
835         alignment to at least the size.
836         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
837         * testsuite/29_atomics/atomic/65147.cc: New.
838         * testsuite/29_atomics/atomic_integral/65147.cc: New.
840 2015-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
842         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
843         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
844         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
846 2015-04-07  Jakub Jelinek  <jakub@redhat.com>
848         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
849         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
850         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
851         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
852         * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
853         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
854         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
855         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
857 2015-03-30  Jonathan Wakely  <jwakely@redhat.com>
859         PR libstdc++/65630
860         * config/abi/pre/gnu.ver: Export operator+ for new strings.
861         * testsuite/21_strings/basic_string/operators/char/65630.cc: New.
862         * testsuite/21_strings/basic_string/operators/wchar_t/65630.cc: New.
864 2015-03-28  Tim Shen  <timshen@google.com>
866         PR libstdc++/65420
867         * include/bits/regex_constants.h: Use constexpr variables for flags.
868         * testsuite/28_regex/constants/constexpr.cc: New testcase.
870 2015-03-27  Jonathan Wakely  <jwakely@redhat.com>
872         PR libstdc++/65499
873         * include/std/chrono: Add using-directive for literals to std::chrono.
874         * testsuite/20_util/duration/literals/65499.cc: New.
876 2015-03-26  Jonathan Wakely  <jwakely@redhat.com>
878         PR libstdc++/58038
879         PR libstdc++/60421
880         * include/std/thread (this_thread::sleep_for): Check for negative
881         durations.
882         (this_thread::sleep_until): Check for times in the past.
883         * testsuite/30_threads/this_thread/58038.cc: New.
884         * testsuite/30_threads/this_thread/60421.cc: New.
886 2015-03-26  Jonathan Wakely  <jwakely@redhat.com>
888         PR libstdc++/62259
889         PR libstdc++/65147
890         * include/std/atomic (atomic<T>): Increase alignment for types with
891         the same size as one of the integral types.
892         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
893         * testsuite/29_atomics/atomic/62259.cc: New.
895 2015-03-26  Richard Henderson  <rth@redhat.com>
897         PR libstdc++/65033
898         * include/bits/atomic_base.h (__atomic_base<T>::is_lock_free): Build
899         a fake pointer indicating type alignment.
900         (__atomic_base<T *>::is_lock_free): Likewise.
901         * include/std/atomic (atomic<T>::is_lock_free): Likewise.
903 2015-03-25  Alan Lawrence  <alan.lawrence@arm.com>
905         PR libstdc++/33394
906         * testsuite/21_strings/basic_string/pthread33394.cc: Use
907         dg-additional-options.
909 2015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
911         PR libstdc++/65543
912         * include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert
913         thinko in r150387.
914         * include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&):
915         Likewise.
916         * testsuite/27_io/rvalue_streams-2.cc: New.
918 2015-03-24  Jonathan Wakely  <jwakely@redhat.com>
920         PR libstdc++/33394
921         * testsuite/21_strings/basic_string/pthread33394.cc: Add test.
923 2015-03-23  Jonathan Wakely  <jwakely@redhat.com>
925         PR libstdc++/64967
926         * acinclude.m4: Disable dual ABI when gnu-versioned-namespace in use.
927         * configure: Regenerate.
928         * src/c++11/compatibility-c++0x.cc (error_category), generic_category,
929         system_category): Use macros for versioned namespace.
930         * src/c++11/futex.cc: Add missing end macro for versioned namespace.
932 2015-03-20  James Greenhalgh  <james.greenhalgh@arm.com>
934         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Disable
935         test for unused for ARM.
936         * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise.
937         * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
939 2015-03-20  Jonathan Wakely  <jwakely@redhat.com>
941         * include/bits/c++config (__gnu_cxx::__cxx11): Define new namespace.
942         * include/ext/codecvt_specializations.h (encoding_state,
943         encoding_char_traits): Remove abi-tag and use inline namespace.
944         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line.
946 2015-03-19  Jason Merrill  <jason@redhat.com>
948         * config/locale/gnu/messages_members.cc: Revert abi-tag change.
949         * src/c++11/cxx11-shim_facets.cc: Revert abi-tag change.
951 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
953         PR c++/65046
954         * config/locale/gnu/messages_members.cc (Catalog_info, Catalogs,
955         get_catalogs): Add abi-tag.
956         * include/ext/codecvt_specializations.h (encoding_state,
957         encoding_char_traits): Likewise.
958         * src/c++11/cxx11-ios_failure.cc (io_error_category): Likewise.
959         * src/c++11/cxx11-shim_facets.cc (__any_string::operator basic_string,
960         numpunct_shim, collate_shim, time_get_shim, moneypunct_shim,
961         money_get_shim, money_put_shim, messages_shim): Likewise.
962         * src/c++11/future.cc (future_error_category::message): Likewise.
963         * src/c++11/system_error.cc (generic_error_category::message,
964         system_error_category::message): Likewise.
965         (__sso_string): Disable -Wabi-tag warnings.
967 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
969         PR libstdc++/13631
970         * config/locale/gnu/messages_members.cc (get_glibc_msg): Fix fallback
971         implementation for old glibc. Fix whitespace.
973 2015-03-18  Jonathan Wakely  <jwakely@redhat.com>
974             Torvald Riegel  <triegel@redhat.com>
976         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for pthread_rwlock_t.
977         * config.h.in: Regenerate.
978         * configure: Regenerate.
979         * include/std/shared_mutex: Check _GLIBCXX_USE_PTHREAD_RWLOCK_T.
980         (shared_timed_mutex::_M_rwlock): Use PTHREAD_RWLOCK_INITIALIZER.
981         (shared_timed_mutex::lock_shared()): Retry on EAGAIN.
982         (shared_timed_mutex::try_lock_shared_until()): Retry on EAGAIN and
983         EDEADLK.
985 2015-03-17  Jonathan Wakely  <jwakely@redhat.com>
987         * libsupc++/nested_exception.h: Do not try to derive from final
988         classes.
989         * testsuite/18_support/nested_exception/throw_with_nested.cc: Test
990         final class.
992         * testsuite/30_threads/shared_lock/modifiers/1.cc: Remove name of
993         unused exception variable.
994         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
995         * testsuite/30_threads/shared_lock/modifiers/2.cc: Remove duplicate
996         test.
997         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
999 2015-03-13  Jonathan Wakely  <jwakely@redhat.com>
1001         * acinclude.m4: Make --enable-libstdcxx-time=auto work for dragonfly.
1002         * configure: Regenerate.
1004         * include/experimental/system_error: Fix include guard.
1006 2015-03-12  Renlin Li  <renlin.li@arm.com>
1008         * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Remove xfail for
1009         wrapped target.
1011 2015-03-10  Tim Shen  <timshen@google.com>
1013         PR libstdc++/64441
1014         * include/bits/regex.h (match_results<>::size,
1015         match_results<>::position, match_results<>::str,
1016         match_results<>::operator[], match_results<>::prefix,
1017         match_results<>::suffix, match_results<>::end,
1018         match_results<>::_M_resize, match_results<>::_M_unmatched_sub,
1019         match_results<>::_M_prefix, match_results<>::_M_suffix): Remove
1020         global __unmatched_sub. Add unmatched submatch as part of
1021         match_results.
1022         * include/bits/regex.tcc (__regex_algo_impl<>, regex_replace<>,
1023         regex_iterator<>::operator++): Adjust to use match_results::_M_prefix.
1024         * testsuite/28_regex/match_results/out_of_range_submatches.cc:
1025         New testcases.
1027 2015-03-09  Jonathan Wakely  <jwakely@redhat.com>
1029         PR libstdc++/64467
1030         * testsuite/28_regex/traits/char/isctype.cc: Don't test newline
1031         for newlib targets. Really fix mixed line-endings this time.
1033 2015-03-06  Jonathan Wakely  <jwakely@redhat.com>
1035         * include/std/future (future_error(error_code)): Construct base
1036         class with error_code's message.
1037         * src/c++11/future.cc (future_error::what()): Do not call c_str() on
1038         temporary string.
1040 2015-03-05  Jonathan Wakely  <jwakely@redhat.com>
1042         * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
1043         noconv result.
1044         * testsuite/22_locale/conversions/string/2.cc: Also test UTF-8.
1045         * testsuite/22_locale/conversions/string/3.cc: Likewise, and UTF-16.
1047 2015-03-04  Jonathan Wakely  <jwakely@redhat.com>
1049         PR libstdc++/64797
1050         * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
1051         incomplete multibyte sequences correctly.
1052         * include/std/codecvt (codecvt_utf8, codecvt_utf16,
1053         codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point.
1054         * src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character):
1055         Define constants.
1056         (is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point):
1057         Define convenience functions.
1058         (read_utf8_code_point): Return relevant constant to distinguish
1059         incomplete characters from invalid sequences.
1060         (read_utf16_code_point): Likewise. Check for invalid sequences.
1061         (ucs4_in, utf16_in): Use incomplete_mb_character constant.
1062         (utf16_out): Check for invalid sequences.
1063         (utf16_span): Fix condition.
1064         (ucs2_out): Use is_high_surrogate.
1065         (ucs2_in): Use incomplete_mb_character constant and fix condition.
1066         * testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace.
1067         * testsuite/22_locale/conversions/buffer/1.cc: New.
1068         * testsuite/22_locale/conversions/string/2.cc: Use char16_t and
1069         char32_t instead of wchar_t.
1070         * testsuite/22_locale/conversions/string/3.cc: New.
1072 2015-03-03  Iain Sandoe  <iain@codesourcery.com>
1074         PR libstdc++/64883
1075         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check
1076         visibility for Darwin.
1077         * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and
1078         also deprecated.
1079         * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
1081 2015-03-02  Jonathan Wakely  <jwakely@redhat.com>
1083         PR libstdc++/65279
1084         * include/std/scoped_allocator (__inner_type_impl,
1085         scoped_allocator_adaptor): Add defaulted copy assignment and move
1086         assignment operators.
1087         * testsuite/20_util/scoped_allocator/65279.cc: New.
1089 2015-03-02  Jonathan Wakely  <jwakely@redhat.com>
1091         PR libstdc++/64367
1092         * include/std/stdexcept (__sso_string): Don't use non-static member
1093         in sizeof.
1095 2015-02-28  Matthias Klose  <doko@ubuntu.com>
1097         PR libstdc++/65246
1098         * python/libstdcxx/v6/__init__.py: Use explicit relative imports.
1100 2015-02-22  Jonathan Wakely  <jwakely@redhat.com>
1102         * doc/xml/manual/status_cxx2011.xml: Remove duplicated information.
1103         * doc/html/manual/status.html: Regenerate.
1105 2015-02-20  Jonathan Wakely  <jwakely@redhat.com>
1107         PR libstdc++/64695
1108         * python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle new
1109         tuple layout.
1111         * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
1112         behavior.
1113         * doc/html/manual/status.html: Regenerate.
1115 2015-02-19  Jonathan Wakely  <jwakely@redhat.com>
1117         PR libstdc++/58357
1118         * include/bits/algorithmfwd.h (rotate): Move to inline namespace _V2.
1119         * include/bits/stl_algo.h (__rotate, rotate): Likewise.
1121 2015-02-19  Hans-Peter Nilsson  <hp@axis.com>
1123         PR testsuite/65093
1124         * testsuite/26_numerics/random/binomial_distribution/operators/values.cc
1125         (test01): Add explanatory comment.  Keep only the bd1 sub-test and
1126         split out bd2, bd3, bd4, and bd5 sub-tests into...
1127         * testsuite/26_numerics/random/binomial_distribution/operators/values2.cc,
1128         testsuite/26_numerics/random/binomial_distribution/operators/values3.cc,
1129         testsuite/26_numerics/random/binomial_distribution/operators/values4.cc,
1130         testsuite/26_numerics/random/binomial_distribution/operators/values5.cc:
1131         New separate files with the old parts.
1133 2015-02-18  Jonathan Wakely  <jwakely@redhat.com>
1135         * src/c++11/codecvt.cc (write_utf16_code_point): Fix code to output
1136         surrogate pairs.
1137         (utf16_in): Pass mode argument to write_utf16_code_point.
1138         (codecvt<char16_t, char, mbstate_t>::do_in): Set mode according to
1139         native byte order.
1140         * testsuite/22_locale/codecvt/char16_t.cc: New.
1141         * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Fix typo.
1143         * testsuite/22_locale/codecvt/char16_t.cc: Add dg-require-cstdint.
1144         * testsuite/22_locale/codecvt/char32_t.cc: Likewise.
1146 2015-02-17  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
1147             Jonathan Wakely  <jwakely@redhat.com>
1149         * testsuite/22_locale/codecvt/char32_t.cc: New.
1151 2015-02-17  Jonathan Wakely  <jwakely@redhat.com>
1153         PR libstdc++/65085
1154         * include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
1155         empty string gets null-terminated.
1156         * testsuite/21_strings/basic_string/cons/char/65085.cc: New.
1158 2015-02-13  Matthew Wahab  <matthew.wahab@arm.com>
1160         * testsuite/28_regex/traits/char/isctype.cc (test01): Fix
1161         mixed line-endings introduced in last change.
1163 2015-02-12  Matthew Wahab  <matthew.wahab@arm.com>
1165         * testsuite/28_regex/traits/char/isctype.cc (test01): Replace test
1166         for __NEWLIB__ macro with a dejagnu set macro.
1167         * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
1169 2015-02-04  Matthew Wahab  <matthew.wahab@arm.com>
1171         PR libstdc++/64467
1172         * testsuite/28_regex/traits/char/isctype.cc (test01):   Add newlib
1173         special case for '\n'.
1174         * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
1176 2015-02-01  Jonathan Wakely  <jwakely@redhat.com>
1178         * src/c++11/futex.cc: Do not define for gthr-single.h targets.
1180 2015-02-01  Jonathan Wakely  <jwakely@redhat.com>
1182         PR libstdc++/64883
1183         * include/c_global/cstdio (gets): Use __deprecated__ attribute instead
1184         of deprecated.
1185         * include/c_std/cstdio (gets): Likewise.
1186         * testsuite/17_intro/headers/c++1998/all_attributes.cc: Avoid clashing
1187         with attributes used in darwin headers.
1189 2015-01-29  Jakub Jelinek  <jakub@redhat.com>
1191         * acinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of
1192         $vtv_cygmin = yes.  Initialize vtv_cygmin=no unconditionally first.
1193         * configure: Regenerated.
1195 2015-01-29  H.J. Lu  <hongjiu.lu@intel.com>
1197         * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
1198         after vtv_cygmin is set.
1199         * configure: Regenerated.
1201 2015-01-29  Matthias Klose  <doko@ubuntu.com>
1203         * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
1204         unconditionally.
1205         * configure: Regenerate.
1207 2015-01-29  Caroline Tice  <cmtice@google.com>
1209         Committing VTV Cywin/Ming patch for Patrick Wollgast
1210         * configure: Regenerate.
1211         * libsupc++/Makefile.in: Regenerate.
1212         * src/Makefile.in: Regenerate.
1214 2015-01-29  Jonathan Wakely  <jwakely@redhat.com>
1216         * include/bits/atomic_base.h: Use __always_inline__ instead of
1217         always_inline.
1218         * include/bits/atomic_futex.h: Likewise.
1219         * include/bits/c++config: Use __abi_tag__ instead of abi_tag.
1220         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Use
1221         __packed__ instead of packed.
1222         * include/std/shared_mutex: Use __unused__ instead of unused.
1223         * testsuite/17_intro/headers/c++1998/all_attributes.cc: New.
1224         * testsuite/17_intro/headers/c++200x/all_attributes.cc: New.
1225         * testsuite/17_intro/headers/c++2014/all_attributes.cc: New.
1227 2015-01-28  Caroline Tice  <cmtice@google.com>
1229         Committing VTV Cywin/Ming patch for Patrick Wollgast
1230         * acinclude.m4: Define VTV_CYGMIN.
1231         * libsupc++/Makefile.am: Add vtv_sources only to libsupc___la_SOURCES
1232         and libsupc__convenience_la_SOURCES if VTV_CYGMIN is not set.
1233         * libsupc++/vtv_stubs.cc: Add none weak declaration of every function
1234         for Cygwin and MinGW.
1235         * src/Makefile.am: Add libvtv.la to toolexeclib_LTLIBRARIES, if
1236         VTV_CYGMIN is set. Define libvtv_la_SOURCES, libvtv_la_LDFLAGS,
1237         libvtv_la_AM_CXXFLAGS and libvtv_la_LINK if VTV_CYGMIN is set.
1239 2015-01-28  Jonathan Wakely  <jwakely@redhat.com>
1241         PR libstdc++/64828
1242         * libsupc++/Makefile.am: Compile del_opvs.cc as C++14.
1243         * libsupc++/Makefile.in: Regenerate.
1244         * src/c++11/Makefile.in: Regenerate.
1246 2015-01-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
1248         * testsuite/lib/libstdc++.exp (v3_target_compile): Remove
1249         check for unsupported.
1250         (v3_target_compile_as_c): Likewise.
1252 2015-01-28  Richard Biener  <rguenther@suse.de>
1254         PR libstdc++/64798
1255         * libsupc++/eh_alloc.cc (struct allocated_entry): Align
1256         data member.
1257         (pool::allocate): Adjust allocation size and alignment to
1258         that change.
1259         (pool::free): Adjust pointer offsetting.
1261 2015-01-27  Jonathan Wakely  <jwakely@redhat.com>
1263         PR libstdc++/64368
1264         * include/std/shared_mutex (shared_timed_mutex::try_lock_for,
1265         shared_timed_mutex::try_lock_until): Only define when POSIX thread
1266         timeouts option is supported.
1267         (shared_timed_mutex::try_shared_lock_for,
1268         shared_timed_mutex::try_shared_lock_until): Likewise.
1270 2015-01-26  Jonathan Wakely  <jwakely@redhat.com>
1272         PR libstdc++/64368
1273         * config/locale/gnu/numeric_members.cc (numpunct<char>::~numpunct(),
1274         numpunct<wchar_t>::~numpunct()): Do not set _M_data->_M_grouping.
1275         * src/c++11/cxx11-shim_facets.cc (numpunct_shim): Remove _M_grouping
1276         and use cache's _M_grouping field.
1277         (__numpunct_fill_cache): Likewise.
1278         (__moneypunct_fill_cache): Improve comments.
1280 2015-01-26  Jonathan Wakely  <jwakely@redhat.com>
1282         * testsuite/23_containers/set/operations/2.cc: Add test for
1283         non-transparent comparison function.
1285 2015-01-25  Oleg Endo  <olegendo@gcc.gnu.org>
1287         PR target/29366
1288         * config/cpu/sh/atomicity.h (__exchange_and_add, __atomic_add): 
1289         Remove SH4A inline asm and lock based implementations and use the
1290         defaults from ext/atomicity.h.
1292 2015-01-23  Jonathan Wakely  <jwakely@redhat.com>
1294         * config/abi/pre/gnu.ver: Tighten GLIBCXX_3.4 patterns to not match
1295         new std::string constructors for byname facets.
1297 2015-01-22  Richard Biener  <rguenther@suse.de>
1299         PR libstdc++/64535
1300         * libsupc++/eh_alloc.cc: Include new.
1301         (bitmask_type): Remove.
1302         (one_buffer): Likewise.
1303         (emergency_buffer): Likewise.
1304         (emergency_used): Likewise.
1305         (dependents_buffer): Likewise.
1306         (dependents_used): Likewise.
1307         (class pool): New custom fixed-size arena, variable size object
1308         allocator.
1309         (emergency_pool): New global.
1310         (__cxxabiv1::__cxa_allocate_exception): Use new emergency_pool.
1311         (__cxxabiv1::__cxa_free_exception): Likewise.
1312         (__cxxabiv1::__cxa_allocate_dependent_exception): Likewise.
1313         (__cxxabiv1::__cxa_free_dependent_exception): Likewise.
1315 2015-01-22  Tim Shen  <timshen@google.com>
1317         PR libstdc++/64680
1318         * include/bits/regex.h (basic_regex<>::basic_regex,
1319         basic_regex<>::operator=, basic_regex<>::imbue): Conform to the
1320         standard interface.
1321         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase.
1323 2015-01-22  Tim Shen  <timshen@google.com>
1325         PR libstdc++/64649
1326         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
1327         regex_traits<>::lookup_classname): Correctly narrow input chars.
1328         * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
1330 2015-01-21  Jonathan Wakely  <jwakely@redhat.com>
1332         * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
1334 2015-01-21  Jonathan Wakely  <jwakely@redhat.com>
1336         * testsuite/29_atomics/atomic/64658.cc: Test stored value.
1338 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1340         * doc/xml/manual/status_cxx2011.xml: Remove stray dbhtml tags.
1341         * doc/xml/manual/status_cxx2014.xml: Update status.
1342         * doc/html/manual/status.html: Regenerate.
1344 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1346         PR libstdc++/64650
1347         * include/experimental/optional (bad_optional_access): Add default
1348         constructor.
1349         * testsuite/experimental/optional/requirements.cc: Test for default
1350         constructor.
1352 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1354         * include/bits/stl_map.h (map::find<>, map::count<>,
1355         map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
1356         member function templates to perform heterogeneous lookup.
1357         * include/bits/stl_multimap.h (multimap::find<>, multimap::count<>,
1358         multimap::lower_bound<>, multimap::upper_bound<>,
1359         multimap::equal_range<>): Likewise.
1360         * include/bits/stl_multiset.h (multiset::find<>, multiset::count<>,
1361         multiset::lower_bound<>, multiset::upper_bound<>,
1362         multiset::equal_range<>): Likewise.
1363         * include/bits/stl_set.h (set::find<>, set::count<>,
1364         set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
1365         * include/bits/stl_tree.h (_Rb_tree::_S_lower_bound_tr,
1366         _Rb_tree::_S_upper_bound_tr, _Rb_tree::_M_find_tr,
1367         _Rb_tree::_M_count_tr, _Rb_tree::_M_lower_bound_tr,
1368         _Rb_tree::_M_upper_bound_tr, _Rb_tree::_M_equal_range_tr): Likewise.
1369         * testsuite/23_containers/map/operations/2.cc: New.
1370         * testsuite/23_containers/multimap/operations/2.cc: New.
1371         * testsuite/23_containers/multiset/operations/2.cc: New.
1372         * testsuite/23_containers/set/operations/2.cc: New.
1374 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1376         * config/abi/pre/gnu.ver: Export new constructors.
1377         * include/bits/codecvt.h (codecvt_byname): Add string constructor.
1378         (codecvt_byname<char16_t>, codecvt_byname<char32_t>): Define explicit
1379         specializations and declare explicit instantiations.
1380         * include/bits/locale_classes.h (locale, collate_byname): Add string
1381         constructors.
1382         * include/bits/locale_facets.h (ctype_byname, numpunct_byname):
1383         Likewise.
1384         * include/bits/locale_facets_nonio.h (time_get_byname,
1385         time_put_byname, moneypunct_byname, messages_byname): Likewise.
1386         * src/c++11/codecvt.cc (codecvt_byname<char16_t>,
1387         codecvt_byname<char32_t>): Define explicit instantiations.
1388         * src/c++11/locale-inst.cc (time_put_byname, codecvt_byname):
1389         Instantiate string constructors.
1390         (ctype_byname): Define string constructor.
1391         * testsuite/22_locale/codecvt_byname/1.cc: New.
1392         * testsuite/22_locale/collate_byname/1.cc: New.
1393         * testsuite/22_locale/ctype_byname/2.cc: New.
1394         * testsuite/22_locale/messages_byname/1.cc: New.
1395         * testsuite/22_locale/moneypunct_byname/1.cc: New.
1396         * testsuite/22_locale/numpunct_byname/1.cc: New.
1398 2015-01-20  Jonathan Wakely  <jwakely@redhat.com>
1400         PR libstdc++/64658
1401         * include/std/atomic (atomic_init): Define.
1402         * testsuite/29_atomics/atomic/64658.cc: New.
1404 2015-01-19  Tim Shen  <timshen@google.com>
1406         PR libstdc++/64649
1407         * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
1408         regex_traits<>::lookup_classname): Support forward iterators.
1409         * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
1410         * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
1412 2015-01-19  Tim Shen  <timshen@google.com>
1414         PR libstdc++/64584
1415         PR libstdc++/64585
1416         * include/bits/regex.h (basic_regex<>::basic_regex,
1417         basic_regex<>::assign, basic_regex<>::imbue,
1418         basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
1419         imbuing basic_regex; Make assign() transactional against exception.
1420         * include/bits/regex_compiler.h (__compile_nfa<>): Add back
1421         __compile_nfa SFINAE.
1422         * include/std/regex: Adjust include order to avoid __compile_nfa
1423         forward declaration.
1424         * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
1425         * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
1427 2015-01-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
1428             Jonathan Wakely  <jwakely@redhat.com>
1430         * include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
1431         on overloads for arrays.
1432         (cbegin, cend, rbegin, rend, crbegin, crend): New.
1433         * testsuite/24_iterators/range_access_cpp14.cc: New.
1435 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
1437         PR libstdc++/64646
1438         * include/bits/stl_algo.h (__is_permutation): Also test for reaching
1439         end of the second range.
1440         * testsuite/25_algorithms/is_permutation/64646.cc: New.
1442 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
1444         * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
1445         * doc/html/manual/status.html: Regenerate.
1447 2015-01-18  Jonathan Wakely  <jwakely@redhat.com>
1449         * include/bits/atomic_futex.h: Use mutex and condition_variable when
1450         atomic int is not lock-free. Make member variables private.
1451         * src/c++11/futex.cc: Likewise.
1453         * src/c++11/futex.cc: Fix order of includes and preprocessor condition.
1455 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1457         PR libstdc++/64638
1458         * include/bits/atomic_futex.h: Use appropriate config macros for
1459         availability of std::mutex, std::condition and std::chrono.
1461 2015-01-17  Ville Voutilainen  <ville.voutilainen@gmail.com>
1462             Jonathan Wakely  <jwakely@redhat.com>
1464         * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
1465         * doc/html/*: Regenerate.
1467 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1469         DR 488
1470         PR libstdc++/58357
1471         * include/bits/algorithmfwd.h (rotate): Return an iterator.
1472         * include/bits/stl_algo.h (rotate, __rotate): Likewise.
1473         * testsuite/25_algorithms/rotate/dr488.cc: New.
1474         * testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
1475         * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
1476         2.cc: Likewise.
1477         * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
1478         pod.cc: Likewise.
1480 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1482         PR libstdc++/60940
1483         * include/bits/atomic_base.h: Remove atomic integral typedefs as
1484         synonyms for __atomic_base<int> etc.
1485         * include/std/atomic: Make atomic_int a synonym for atomic<int> and
1486         likewise for all atomic integral types.
1487         * testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
1488         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
1490 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1492         PR libstdc++/56785
1493         * include/std/tuple (_Tuple_impl): Remove zero-element specialization
1494         and define one-element specialization.
1495         * testsuite/20_util/tuple/56785.cc: New.
1497 2015-01-17  Jonathan Wakely  <jwakely@redhat.com>
1499         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
1500         Remove unused header.
1501         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
1502         Likewise.
1503         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
1504         Likewise.
1506 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
1508         * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
1509         * include/std/locale: Include new header.
1510         * include/Makefile.am: Add it.
1511         * include/Makefile.in: Regenerate.
1512         * testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
1513         * testsuite/22_locale/conversions/string/1.cc: New.
1514         * testsuite/22_locale/conversions/string/2.cc: New.
1515         * testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
1516         * testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
1517         New.
1519 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
1521         * config/abi/pre/gnu.ver: Export new symbols.
1522         * include/Makefile.am: Add codecvt.
1523         * include/Makefile.in: Regenerate.
1524         * include/std/codecvt: New header.
1525         * src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
1526         __codecvt_utf8_utf16_base): Define specializations.
1527         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
1528         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
1529         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
1530         New.
1532 2015-01-16  Torvald Riegel  <triegel@redhat.com>
1534         * src/c++11/futex.cc: New file.
1535         * include/bits/atomic_futex.h: New file.
1536         * include/std/future (__future_base::_State_baseV2): Use
1537         atomic_futex_unsigned instead of mutex+condvar.
1538         * src/c++11/futex.cc: Likewise.
1539         * include/Makefile.am: Add atomic_futex.h.
1540         * include/Makefile.in: Likewise.
1541         * src/c++11/Makefile.am: Add futex.cc.
1542         * src/c++11/Makefile.in: Likewise.
1544 2015-01-16  Jonathan Wakely  <jwakely@redhat.com>
1546         * acinclude.m4: Fix typo in comment.
1547         * configure: Regenerate.
1548         * include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
1549         codecvt<char16_t, char, mbstate_t>): Declare specializations.
1550         * include/bits/locale_facets.h: Reserve space for new specializations.
1551         * src/c++11/Makefile.am: Add codecvt.cc.
1552         * src/c++11/Makefile.in: Regenerate.
1553         * src/c++11/codecvt.cc: New.
1554         * src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
1555         with -std=gnu++11.
1556         * src/c++98/Makefile.in: Regenerate.
1557         * src/c++98/locale_init.cc: Initialize new codecvt specializations.
1558         * src/c++98/localename.cc: Likewise.
1559         * config/abi/pre/gnu.ver: Exports for new codecvt specializations.
1560         * testsuite/22_locale/codecvt/utf8.cc: New.
1561         * testsuite/22_locale/locale/cons/unicode.cc: Check that new
1562         specializations are installed in locale objects.
1564 2015-01-16  Torvald Riegel  <triegel@redhat.com>
1566         * include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
1567         implementation.
1569 2015-01-13  Jonathan Wakely  <jwakely@redhat.com>
1571         PR libstdc++/64571
1572         * config/abi/pre/gnu.ver: Export fstream functions using new string.
1574 2015-01-12  Jonathan Wakely  <jwakely@redhat.com>
1576         PR libstdc++/64560
1577         * src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
1578         for RTTI support.
1580         PR libstdc++/64553
1581         * src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
1583 2015-01-10  Thomas Schwinge  <thomas@codesourcery.com>
1585         * doc/xml/manual/parallel_mode.xml: Update for libgomp being
1586         renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
1587         Multi Processing Runtime Library".
1589 2015-01-09  Jonathan Wakely  <jwakely@redhat.com>
1591         PR libstdc++/64476
1592         * include/bits/stl_uninitialized.h (uninitialized_copy): Fix
1593         is_assignable arguments.
1594         * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
1595         New.
1597 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
1599         * libsupc++/unwind-cxx.h: Revert previous commit.
1601 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
1603         * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
1605 2015-01-09  Tim Shen  <timshen@google.com>
1607         PR libstdc++/64239
1608         * include/bits/regex.h (match_results<>::swap): Use std::swap
1609         instead of swap.
1610         * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1611         Likewise.
1612         * testsuite/28_regex/match_results/swap.cc: New testcase.
1614 2015-01-08  Jonathan Wakely  <jwakely@redhat.com>
1616         PR libstdc++/60132
1617         * include/std/type_traits (has_trivial_default_constructor,
1618         has_trivial_copy_constructor, has_trivial_copy_assign): Add deprecated
1619         attribute.
1620         * testsuite/20_util/has_trivial_copy_assign/requirements/
1621         explicit_instantiation.cc: Use -Wno-deprecated.
1622         * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
1623         Likewise.
1624         * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
1625         * testsuite/20_util/has_trivial_copy_constructor/requirements/
1626         explicit_instantiation.cc: Likewise.
1627         * testsuite/20_util/has_trivial_copy_constructor/requirements/
1628         typedefs.cc: Likewise.
1629         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
1630         * testsuite/20_util/has_trivial_default_constructor/requirements/
1631         explicit_instantiation.c: Likewise.
1632         * testsuite/20_util/has_trivial_default_constructor/requirements/
1633         typedefs.cc: Likewise.
1634         * testsuite/20_util/has_trivial_default_constructor/value.cc:
1635         Likewise.
1636         * testsuite/20_util/pair/requirements/dr801.cc: Replace deprecated
1637         trait.
1638         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
1639         * testsuite/util/testsuite_common_types.h: Likewise.
1641 2015-01-08  Jonathan Wakely  <jwakely@redhat.com>
1643         * include/bits/hashtable_policy.h: Use __bool_constant.
1645 2015-01-07  Jonathan Wakely  <jwakely@redhat.com>
1647         * libsupc++/Makefile.am: Compile del_ops.cc as C++14.
1648         * libsupc++/Makefile.in: Regenerate.
1650 2015-01-06  Jonathan Wakely  <jwakely@redhat.com>
1652         * config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
1654 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
1656         Update copyright years.
1658 2015-01-04  Jonathan Wakely  <jwakely@redhat.com>
1660         PR libstdc++/64483
1661         * testsuite/18_support/exception_ptr/64241.cc: Use
1662         dg-require-atomic-builtins.
1664 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
1666         * testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
1667         date.
1669 2015-01-02  Tim Shen  <timshen@google.com>
1671         PR libstdc++/64475
1672         * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Copy the
1673         iterator, since the original one shouldn't be mutated.
1675 2015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1677         PR libstdc++/64422
1678         * src/c++98/misc-inst.cc (string::erase): Add missing overloads.
1679         (string::insert): Likewise.
1680         (string::replace): Likewise.
1681         (wstring::erase): Likewise.
1682         (wstring::insert): Likewise.
1683         (wstring::replace): Likewise.
1684         * testsuite/21_strings/basic_string/modifiers/64422.cc: New testcase.
1686 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
1688         PR libstdc++/64468
1689         * doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
1691 2015-01-02  Jonathan Wakely  <jwakely@redhat.com>
1693         PR libstdc++/64438
1694         * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
1695         Revert removal of dg-require-string-conversions.
1696         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
1697         Likewise.
1698         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
1699         Likewise.
1700         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
1701         Likewise.
1702         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
1703         Likewise.
1704         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
1705         Likewise.
1706         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
1707         Likewise.
1708         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
1709         Likewise.
1710         * testsuite/21_strings/basic_string/numeric_conversions/char/
1711         stoull.cc: Likewise.
1712         * testsuite/21_strings/basic_string/numeric_conversions/char/
1713         to_string.cc: Likewise.
1715 Copyright (C) 2015 Free Software Foundation, Inc.
1717 Copying and distribution of this file, with or without modification,
1718 are permitted in any medium without royalty provided the copyright
1719 notice and this notice are preserved.