12017-10-10  Release Manager
2
3	* GCC 5.5.0 released.
4
52017-09-13  Jonathan Wakely  <jwakely@redhat.com>
6
7	* testsuite/20_util/reference_wrapper/80504.cc: Do not use invalid
8	effective-target.
9	* testsuite/22_locale/conversions/buffer/2.cc: Likewise.
10	* testsuite/28_regex/basic_regex/ctors/basic/iter.cc: Likewise. Fix
11	use of test_container.
12
13	PR libstdc++/81468
14	* include/std/chrono (time_point(const time_point<_Dur2>&)): Add
15	missing constraint from LWG DR 1177.
16	* testsuite/20_util/duration/cons/dr1177.cc: New.
17	* testsuite/20_util/time_point/cons/81468.cc: New.
18	* testsuite/20_util/duration/literals/range.cc: Update dg-error line.
19
20	* doc/doxygen/mainpage.html: Fix broken URLs.
21
22	PR libstdc++/81835
23	* doc/xml/manual/extensions.xml: Replace unstable URL.
24	* doc/html/manual/ext_demangling.html: Regenerate.
25	* libsupc++/cxxabi.h (__cxa_demangle): Fix broken URL.
26
272017-09-04  Jonathan Wakely  <jwakely@redhat.com>
28
29	Backport from mainline
30	2017-08-09  Jonathan Wakely  <jwakely@redhat.com>
31
32	PR libstdc++/79820
33	PR libstdc++/81751
34	* config/io/basic_file_stdio.cc (sys_open(FILE*, ios_base::openmode)):
35	Call fflush on the stream instead of calling sync() while _M_cfile is
36	null. Restore original value of errno.
37	* testsuite/ext/stdio_filebuf/char/79820.cc: New.
38	* testsuite/ext/stdio_filebuf/char/81751.cc: New.
39
40	Backport from mainline
41	2017-07-25  Jonathan Wakely  <jwakely@redhat.com>
42
43	PR libstdc++/53984
44	* include/bits/basic_ios.h (basic_ios::_M_setstate): Adjust comment.
45	* include/bits/istream.tcc (basic_istream::sentry): Handle exceptions
46	during construction.
47	* include/std/istream: Adjust comments for formatted input functions
48	and unformatted input functions.
49	* testsuite/27_io/basic_fstream/53984.cc: New.
50	* testsuite/27_io/basic_istream/sentry/char/53984.cc: New.
51
52	Backport from mainline
53	2017-06-08  Jonathan Wakely  <jwakely@redhat.com>
54
55	PR libstdc++/81017
56	* include/std/functional (function::function(function&&))
57	(function::operator=(function&&)): Add noexcept.
58	* testsuite/20_util/function/assign/move.cc: Check for noexcept.
59	* testsuite/20_util/function/cons/move.cc: Likewise.
60
61	Backport from mainline
62	2017-06-05  Jonathan Wakely  <jwakely@redhat.com>
63
64	* include/bits/shared_ptr_base.h (__shared_ptr::owner_before)
65	(__weak_ptr::owner_before, _Sp_owner_less::operator()): Add noexcept
66	specifiers as per LWG 2873 and LWG 2942.
67	* testsuite/20_util/owner_less/noexcept.cc: New.
68	* testsuite/20_util/shared_ptr/observers/owner_before.cc: Test
69	noexcept guarantees.
70	* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
71
72	Backport from mainline
73	2017-08-31  Jonathan Wakely  <jwakely@redhat.com>
74
75	PR c++/82039
76	* include/ext/new_allocator.h (__gnu_cxx::new_allocator::allocate):
77	Adjust null pointer constant to avoid warning.
78
79	Backport from mainline
80	2017-08-18  Jonathan Wakely  <jwakely@redhat.com>
81
82	PR libstdc++/81891
83	* include/bits/hashtable.h (_Hashtable(_InputIterator, _InputIterator,
84	size_type, const _H1&, const _H2&, const _Hash&, const _Equal&,
85	const _ExtractKey&, const allocator_type&)): Let destructor do clean
86	up if an exception is thrown.
87	* testsuite/23_containers/unordered_map/cons/81891.cc: New.
88
89	Backport from mainline
90	2017-07-31  Marek Polacek  <polacek@redhat.com>
91
92	PR libstdc++/81599
93	* include/bits/stl_stack.h: Fix typo.
94
95	Backport from mainline
96	2017-07-10  Jonathan Wakely  <jwakely@redhat.com>
97
98	PR libstdc++/81338
99	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (basic_string):
100	Declare basic_stringbuf to be a friend.
101	* include/bits/sstream.tcc (basic_stringbuf::overflow)
102	[_GLIBCXX_USE_CXX11_ABI]: Use unused capacity before reallocating.
103	* include/std/sstream (basic_stringbuf::__xfer_bufptrs): Update string
104	length to buffer length.
105	* testsuite/27_io/basic_stringstream/assign/81338.cc: New.
106
1072017-09-01  Jonathan Wakely  <jwakely@redhat.com>
108
109	Backport from mainline
110	2016-10-06  Jonathan Wakely  <jwakely@redhat.com>
111
112	* doc/xml/manual/status_cxx2011.xml: Update status.
113	* doc/html/manual/status.html: Regenerate.
114	* include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
115	New helpers for recursive OUTERMOST.
116	(__outermost): Use __outermost_type::_S_outermost.
117	(__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
118	(scoped_allocator_adaptor::__outermost_alloc_traits): Use new
119	__outermost_type helper.
120	(scoped_allocator_adaptor::_Constructible): New alias template.
121	(scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
122	Constrain template constructors.
123	* testsuite/20_util/scoped_allocator/3.cc: New test.
124	* testsuite/20_util/scoped_allocator/outermost.cc: New test.
125
1262017-06-16  Jonathan Wakely  <jwakely@redhat.com>
127
128	* include/bits/locale_conv.h (wbuffer_convert::sync): Fix condition.
129	* testsuite/22_locale/conversions/buffer/2.cc: New.
130
131	* doc/xml/manual/appendix_contributing.xml: Link to the list of bad
132	names, and link to the test docs and note higher DejaGnu version
133	requirement.
134	* doc/xml/manual/allocator.xml: Fix ViewCVS URLs.
135	* doc/xml/manual/mt_allocator.xml: Likewise.
136	* doc/html/*: Regenerate.
137
138	* include/bits/locale_conv.h (wbuffer_convert::_M_put): Add missing
139	return statement.
140
1412017-06-07  Jonathan Wakely  <jwakely@redhat.com>
142
143	PR libstdc++/81002
144	* include/bits/regex_compiler.h (__compile_nfa): Add template argument
145	list to specify traits type.
146	* testsuite/28_regex/basic_regex/ctors/basic/iter.cc: New.
147
1482017-05-18  Jonathan Wakely  <jwakely@redhat.com>
149
150	* testsuite/22_locale/codecvt/codecvt_utf16/79980.cc: Replace
151	effective-target with dg-options directive.
152	* testsuite/22_locale/codecvt/codecvt_utf16/80041.cc: Likewise.
153	* testsuite/22_locale/codecvt/codecvt_utf16/members.cc: Likewise.
154	* testsuite/22_locale/codecvt/codecvt_utf16/misaligned.cc: Likewise.
155	* testsuite/22_locale/codecvt/codecvt_utf8/79980.cc: Likewise.
156	* testsuite/22_locale/codecvt/codecvt_utf8/members.cc: Likewise.
157	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/79511.cc: Likewise.
158	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/members.cc: Likewise.
159
160	Backport from mainline
161	2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
162
163	* testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
164	options are present that aren't valid for C.
165	* testsuite/abi/header_cxxabi.c: Likewise.
166
167	Backport from mainline
168	2017-04-24  Jonathan Wakely  <jwakely@redhat.com>
169
170	PR libstdc++/80504
171	* include/std/functional (ref, cref): Qualify calls.
172	* testsuite/20_util/reference_wrapper/80504.cc: New test.
173
174	Backport from mainline
175	2017-04-19  Jonathan Wakely  <jwakely@redhat.com>
176
177	PR libstdc++/80448
178	* include/experimental/bits/fs_dir.h (directory_iterator)
179	(recursive_directory_iterator): Remove noexcept from defaulted
180	constructors.
181
182	Backport from mainline
183	2017-04-03  Jonathan Wakely  <jwakely@redhat.com>
184
185	* testsuite/20_util/reference_wrapper/invoke.cc: Uncomment tests
186	that no longer fail.
187
188	Backport from mainline
189	2017-04-03  Jonathan Wakely  <jwakely@redhat.com>
190
191	* include/bits/ios_base.h: Correct comment.
192	* testsuite/util/testsuite_hooks.h: Likewise.
193
194	Backport from mainline
195	2017-03-16  Jonathan Wakely  <jwakely@redhat.com>
196
197	PR libstdc++/67440
198	* python/libstdcxx/v6/printers.py (find_type): Avoid gdb.Type.name
199	for GDB 7.6 compatibility, use gdb.Type.unqualified instead.
200
201	Backport from mainline
202	2017-01-17  Jonathan Wakely  <jwakely@redhat.com>
203
204	PR libstdc++/69699
205	* doc/xml/manual/abi.xml (abi.versioning.history): Explain why the
206	_GLIBCXX__ macro is not useful. Remove redundant date information
207	and link to the GCC release timeline.
208	(abi.versioning.active): Move partial sentence into the previous
209	paragraph.
210	* doc/html/*: Regenerate.
211
212	Backport from mainline
213	2016-12-21  Jonathan Wakely  <jwakely@redhat.com>
214
215	PR libstdc++/71444
216	* config/os/mingw32-w64/error_constants.h
217	(address_family_not_supported, address_in_use, address_not_available)
218	(already_connected, connection_aborted, connection_already_in_progress)
219	connection_refused, connection_reset, cross_device_link)
220	(destination_address_required, host_unreachable, message_size)
221	(network_down, network_reset, network_unreachable, no_buffer_space)
222	(no_protocol_option, not_a_socket, not_connected, operation_canceled)
223	(operation_in_progress, operation_not_supported, protocol_error)
224	(protocol_not_supported, too_many_links, too_many_symbolic_link_levels)
225	(value_too_large, wrong_protocol_type): Define.
226	(bad_message, identifier_removed, no_link, no_message_available)
227	(no_message, no_stream_resources, not_a_stream, owner_dead)
228	(state_not_recoverable, stream_timeout, text_file_busy): Define
229	conditionally.
230	* testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
231	Guard test for no_message with _GLIBCXX_HAVE_ENOMSG.
232
233	Backport from mainline
234	2016-11-09  Tim Shen  <timshen@google.com>
235
236	PR libstdc++/78236
237	* libstdc++-v3/include/bits/regex.h (regex_iterator::regex_iterator()):
238	Define end() as _M_pregex == nullptr.
239	* libstdc++-v3/include/bits/regex.tcc (regex_iterator::operator==(),
240	regex_iterator::operator++()): Fix operator==() and operator++() to
241	look at null-ness of _M_pregex on both sides.
242	* testsuite/28_regex/regression.cc: New testcase.
243
244	Backport from mainline
245	2016-12-15  Jonathan Wakely  <jwakely@redhat.com>
246
247	PR libstdc++/59170
248	* python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
249	(StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
250	(StdRbtreeIteratorPrinter.to_string)
251	(StdDequeIteratorPrinter.to_string): Add check for value-initialized
252	iterators.
253	* testsuite/libstdc++-prettyprinters/simple.cc: Test them.
254	* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
255
256	Backport from mainline
257	2016-12-15  Jonathan Wakely  <jwakely@redhat.com>
258
259	PR libstdc++/59161
260	* python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
261	(StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
262	(StdRbtreeIteratorPrinter.to_string, StdDequeIteratorPrinter.to_string)
263	(StdDebugIteratorPrinter.to_string): Return string instead of
264	gdb.Value.
265	* testsuite/libstdc++-prettyprinters/59161.cc: New test.
266
267	Backport from mainline
268	2016-10-11  Jonathan Wakely  <jwakely@redhat.com>
269
270	* python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
271	Register printer for std::__cxx11::list.
272	* python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
273	std::__cxx11::list as well as std::list.
274
2752017-05-17  Jonathan Wakely  <jwakely@redhat.com>
276
277	Backport from mainline
278	2017-03-15  Xi Ruoyao  <ryxi@stu.xidian.edu.cn>
279
280	PR libstdc++/62045
281	* include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp
282	(is_heap): Remove.
283	(push_heap): Remove the wrong checking using is_heap.
284	(make_heap): Remove the assertion using is_heap.
285	* include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
286	(modify): Ditto.
287	(resize_for_insert_if_needed): Add PB_DS_ASSERT_VALID after
288	calling make_heap.
289
290	Backport from mainline
291	2017-03-15  Jonathan Wakely  <jwakely@redhat.com>
292
293	PR libstdc++/62045
294	* testsuite/ext/pb_ds/regression/priority_queue_binary_heap-62045.cc:
295	New test.
296	* testsuite/ext/pb_ds/regression/priority_queues.cc: Fix copy&paste
297	error in comment.
298
299	Backport from mainline
300	2015-11-17  Jonathan Wakely  <jwakely@redhat.com>
301
302	PR libstdc++/66059
303	* include/std/utility (_Build_index_tuple): Optimise.
304
3052017-03-17  Jonathan Wakely  <jwakely@redhat.com>
306
307	Backport from mainline
308	2017-03-17  Jonathan Wakely  <jwakely@redhat.com>
309
310	* src/c++11/codecvt.cc (range): Add non-type template parameter and
311	define oerloaded operators for reading and writing code units.
312	(range<Elem, false>): Define partial specialization for accessing
313	wide characters in potentially unaligned byte ranges.
314	(ucs2_span(const char16_t*, const char16_t*, ...))
315	(ucs4_span(const char16_t*, const char16_t*, ...)): Change parameters
316	to range<const char16_t, false> in order to avoid unaligned reads.
317	(__codecvt_utf16_base<char16_t>::do_out)
318	(__codecvt_utf16_base<char32_t>::do_out)
319	(__codecvt_utf16_base<wchar_t>::do_out): Use range specialization for
320	unaligned data to avoid unaligned writes.
321	(__codecvt_utf16_base<char16_t>::do_in)
322	(__codecvt_utf16_base<char32_t>::do_in)
323	(__codecvt_utf16_base<wchar_t>::do_in): Likewise for writes. Return
324	error if there are unprocessable trailing bytes.
325	(__codecvt_utf16_base<char16_t>::do_length)
326	(__codecvt_utf16_base<char32_t>::do_length)
327	(__codecvt_utf16_base<wchar_t>::do_length): Pass arguments of type
328	range<const char16_t, false> to span functions.
329	* testsuite/22_locale/codecvt/codecvt_utf16/misaligned.cc: New test.
330
331	Backport from mainline
332	2017-03-16  Jonathan Wakely  <jwakely@redhat.com>
333
334	PR libstdc++/79980
335	* src/c++11/codecvt.cc (to_integer(codecvt_mode)): Fix target type.
336
337	PR libstdc++/80041
338	* src/c++11/codecvt.cc (__codecvt_utf16_base<wchar_t>::do_out)
339	(__codecvt_utf16_base<wchar_t>::do_in): Convert char arguments to
340	char16_t to work with UTF-16 instead of UTF-8.
341	* testsuite/22_locale/codecvt/codecvt_utf16/80041.cc: New test.
342
343	* src/c++11/codecvt.cc (codecvt<char16_t, char, mbstate_t>)
344	(codecvt<char32_t, char, mbstate_t>, __codecvt_utf8_base<char16_t>)
345	(__codecvt_utf8_base<char32_t>, __codecvt_utf8_base<wchar_t>)
346	(__codecvt_utf16_base<char16_t>, __codecvt_utf16_base<char32_t>)
347	(__codecvt_utf16_base<wchar_t>, __codecvt_utf8_utf16_base<char16_t>)
348	(__codecvt_utf8_utf16_base<char32_t>)
349	(__codecvt_utf8_utf16_base<wchar_t>): Fix do_encoding() and
350	do_max_length() return values.
351	* testsuite/22_locale/codecvt/codecvt_utf16/members.cc: New test.
352	* testsuite/22_locale/codecvt/codecvt_utf8/members.cc: New test.
353	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/members.cc: New test.
354
355	PR libstdc++/79980
356	* include/bits/locale_conv.h (__do_str_codecvt): Set __count on
357	error path.
358	* src/c++11/codecvt.cc (operator&=, operator|=, operator~): Overloads
359	for manipulating codecvt_mode values.
360	(read_utf16_bom): Compare input to BOM constants instead of integral
361	constants that depend on endianness.  Take mode parameter by
362	reference and adjust it, to distinguish between no BOM present and
363	UTF-16BE BOM present.
364	(ucs4_in, ucs2_span, ucs4_span): Adjust calls to read_utf16_bom.
365	(surrogates): New enumeration type.
366	(utf16_in, utf16_out): Add surrogates parameter to choose between
367	UTF-16 and UCS2 behaviour.
368	(utf16_span, ucs2_span): Use std::min not std::max.
369	(ucs2_out): Use std::min not std::max.  Disallow surrogate pairs.
370	(ucs2_in): Likewise. Adjust calls to read_utf16_bom.
371	* testsuite/22_locale/codecvt/codecvt_utf16/79980.cc: New test.
372	* testsuite/22_locale/codecvt/codecvt_utf8/79980.cc: New test.
373
374	PR libstdc++/79511
375	* src/c++11/codecvt.cc (write_utf16_code_point): Don't write 0xffff
376	as a surrogate pair.
377	(__codecvt_utf8_utf16_base<char32_t>::do_in): Use native endianness
378	for internal representation.
379	(__codecvt_utf8_utf16_base<wchar_t>::do_in): Likewise.
380	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/79511.cc: New test.
381
3822017-03-14  Jonathan Wakely  <jwakely@redhat.com>
383
384	* testsuite/17_intro/names.cc: Undefine macros that clash with
385	identifiers in AIX system headers.
386
3872017-03-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
388
389	PR libstdc++/80034
390	* include/bits/list.tcc (merge(list&&)): Use const for the size_t
391	in the function and in the catch-block, qualify uses of std::distance.
392	(merge(list&&, _StrictWeakOrdering)): Likewise.
393	* testsuite/23_containers/list/operations/80034.cc: New.
394
3952017-03-02  Jonathan Wakely  <jwakely@redhat.com>
396
397	PR libstdc++/79789
398	* include/bits/ios_base.h (make_error_code, make_error_condition):
399	Likewise.
400	* include/bits/mask_array.h (mask_array): Likewise.
401	* include/bits/regex.h (regex_token_iterator): Likewise.
402	* include/bits/slice_array.h (slice_array): Likewise.
403	* include/std/memory (undeclare_no_pointers): Likewise.
404	* testsuite/17_intro/names.cc: New test.
405
4062017-02-14  Jonathan Wakely  <jwakely@redhat.com>
407
408	Backport from mainline
409	2017-01-20  Jonathan Wakely  <jwakely@redhat.com>
410
411	PR libstdc++/69321
412	* include/experimental/any (__any_caster): Avoid instantiating
413	manager function for types that can't be stored in any.
414	* testsuite/experimental/any/misc/any_cast.cc: Test non-copyable type.
415	* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
416
417	Backport from mainline
418	2017-01-18  Jonathan Wakely  <jwakely@redhat.com>
419
420	PR libstdc++/69301
421	* include/std/atomic (atomic<T>::load, atomic<T>::exchange): Use
422	aligned buffer instead of default-initialized variable.
423	* testsuite/29_atomics/atomic/69301.cc: New test.
424	* include/ext/pointer.h (_Pointer_adapter::operator++(int))
425	(_Pointer_adapter::operator--(int)): Likewise.
426
427	Backport from mainline
428	2017-01-16  Jonathan Wakely  <jwakely@redhat.com>
429
430	PR libstdc++/78702
431	* include/bits/locale_classes.h (locale::facet::__shim): Change from
432	private to protected.
433	* src/c++11/cxx11-shim_facets.cc (__shim_accessor): Define helper to
434	make locale::facet::__shim accessible.
435
436	Backport from mainline
437	2017-01-11  Jonathan Wakely  <jwakely@redhat.com>
438
439	PR libstdc++/78134
440	* include/bits/stl_map.h (map::lower_bound, map::upper_bound)
441	(map::equal_range): Fix return type of heterogeneous overloads.
442	* include/bits/stl_multimap.h (multimap::lower_bound)
443	(multimap::upper_bound, multimap::equal_range): Likewise.
444	* include/bits/stl_multiset.h (multiset::lower_bound)
445	(multiset::upper_bound, multiset::equal_range): Likewise.
446	* include/bits/stl_set.h (set::lower_bound, set::upper_bound)
447	(set::equal_range): Likewise.
448	* testsuite/23_containers/map/operations/2.cc: Check return types.
449	* testsuite/23_containers/multimap/operations/2.cc: Likewise.
450	* testsuite/23_containers/multiset/operations/2.cc: Likewise.
451	* testsuite/23_containers/set/operations/2.cc: Likewise.
452
453	Backport from mainline
454	2017-01-11  Jonathan Wakely  <jwakely@redhat.com>
455
456	PR libstdc++/78273
457	* include/bits/stl_map.h (map::count<_Kt>(const _Kt&)): Don't assume
458	the heterogeneous comparison can only find one match.
459	* include/bits/stl_set.h (set::count<_Kt>(const _Kt&)): Likewise.
460	* testsuite/23_containers/map/operations/2.cc: Test count works with
461	comparison function that just partitions rather than sorting.
462	* testsuite/23_containers/set/operations/2.cc: Likewise.
463
4642017-02-01  Jonathan Wakely  <jwakely@redhat.com>
465
466	PR libstdc++/78346
467	* include/bits/predefined_ops.h (_Iter_equals_iter): Store iterator
468	not its referent.
469	(_Iter_comp_to_iter): Likewise.
470	* testsuite/25_algorithms/search/78346.cc: New test.
471
472	PR libstdc++/79254
473	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
474	(basic_string::operator=(const basic_string&)): If source object is
475	small just deallocate, otherwise perform new allocation before
476	making any changes.
477	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
478	Test exception-safety of copy assignment when allocator propagates.
479	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
480	Likewise.
481	* testsuite/util/testsuite_allocator.h (uneq_allocator::swap): Make
482	std::swap visible.
483
4842017-01-22  Gerald Pfeifer  <gerald@pfeifer.com>
485
486	Merge from mainline
487	2017-01-01  Gerald Pfeifer  <gerald@pfeifer.com>
488
489	* doc/xml/faq.xml: Update address of C++ ABI link.
490	* doc/xml/manual/abi.xml: Ditto.
491
4922017-01-16  Ville Voutilainen  <ville.voutilainen@gmail.com>
493
494	Backport from mainline
495	2017-01-16  Ville Voutilainen  <ville.voutilainen@gmail.com>
496
497	PR libstdc++/78389
498	* include/bits/list.tcc (merge(list&&)): Fix backwards size adjustments.
499	(merge(list&&, _StrictWeakOrdering)): Likewise.
500	* testsuite/23_containers/list/operations/78389.cc: Add
501	better test for the sizes.
502
5032017-01-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
504
505	Backport from mainline
506        2017-01-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
507
508	PR libstdc++/78389
509	* include/bits/list.tcc (merge(list&&)):
510	Adjust list sizes if the comparator throws.
511	(merge(list&&, _StrictWeakOrdering)): Likewise.
512	* testsuite/23_containers/list/operations/78389.cc: New.
513
5142017-01-09  Jonathan Wakely  <jwakely@redhat.com>
515
516	* testsuite/30_threads/thread/cons/lwg2097.cc: Compile with
517	-std=gnu++11.
518
519	* testsuite/25_algorithms/sort/78991.cc: Compile with -std=gnu++14.
520
5212017-01-06  Jonathan Wakely  <jwakely@redhat.com>
522
523	Backport from mainline
524	2017-01-03  Jonathan Wakely  <jwakely@redhat.com>
525
526	PR libstdc++/78956
527	* include/std/thread (thread(const thread&&)): Add deleted
528	constructor.
529	* testsuite/30_threads/thread/cons/lwg2097.cc: New test.
530
5312017-01-06  Jonathan Wakely  <jwakely@redhat.com>
532
533	PR libstdc++/78991
534	* include/bits/predefined_ops.h (_Iter_comp_iter, _Iter_comp_val)
535	(_Val_comp_iter, _Iter_equals_val, _Iter_pred, _Iter_comp_to_val)
536	(_Iter_comp_to_iter, _Iter_negate): Make constructors explicit.
537	* testsuite/25_algorithms/sort/78991.cc: New test.
538
5392016-12-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
540
541	Backport from mainline
542	2016-12-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
543
544	Make the perfect-forwarding constructor of a two-element tuple
545	sfinae away when the first argument is an allocator_arg.
546	* include/std/tuple (tuple(_U1&&, _U2&&)): Constrain.
547	* testsuite/20_util/tuple/cons/allocator_with_any.cc: New.
548
5492016-12-13  Jonathan Wakely  <jwakely@redhat.com>
550
551	Backport from mainline
552	2016-10-26  Uros Bizjak  <ubizjak@gmail.com>
553
554	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Include <limits.h>
555	for PATH_MAX in realpath test.
556	* configure: Regenerate.
557
558	Backport from mainline
559	2016-05-25  Jonathan Wakely  <jwakely@redhat.com>
560
561	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
562	* configure: Regenerate.
563	* config.h.in: Regenerate.
564
5652016-12-12  Jonathan Wakely  <jwakely@redhat.com>
566
567	Backport from mainline
568	2016-12-07  Jonathan Wakely  <jwakely@redhat.com>
569
570	* testsuite/18_support/headers/new/synopsis.cc: Add C++14 declarations.
571	* testsuite/18_support/headers/new/synopsis_cxx98.cc: New test.
572
5732016-12-12  Jonathan Wakely  <jwakely@redhat.com>
574
575	Backport from mainline
576	2016-11-22  Jonathan Wakely  <jwakely@redhat.com>
577
578	PR libstdc++/78465
579	* testsuite/29_atomics/headers/atomic/macros.cc: Replace runtime tests
580	with preprocessor conditions.
581
5822016-12-12  Jonathan Wakely  <jwakely@redhat.com>
583
584	Backport from mainline
585	PR libstdc++/70975
586	PR libstdc++/71337
587	PR libstdc++/78111
588	* include/experimental/bits/fs_dir.h (recursive_directory_iterator):
589	Overload pop (LWG 2706).
590	* include/experimental/bits/fs_fwd.h (perms::resolve_symlinks):
591	Replace with symlink_nofollow (LWG 2720).
592	* include/experimental/bits/fs_ops.h
593	(exists(const path&, error_code&)): Clear error if status is known
594	(LWG 2725).
595	* include/experimental/bits/fs_path.h (__is_path_src)
596	(_S_range_begin, _S_range_end): Overload to treat string_view as a
597	Source object.
598	(path::operator+=, path::compare): Overload for basic_string_view.
599	(path::path(string_type&&))
600	(path::operator=(string&&), path::assign(string_type&&)): Define
601	construction and assignment from string_type rvalues (LWG 2707).
602	(path::_S_convert<_Iter>(_Iter, _Iter)): Remove cv-qualifiers from
603	iterator's value_type.
604	(path::_S_convert<_Iter>(_Iter __first, __null_terminated)): Likewise.
605	Do not use operation not supported by input iterators.
606	(path::__is_path_iter_src): Add partial specialization for const
607	encoded character types.
608	* src/filesystem/dir.cc (open_dir): Return same value for errors
609	whether ignored or not.
610	(_Dir::advance(error_code*, directory_options)): Return false on
611	error.
612	(directory_iterator(const path&, directory_options, error_code*)):
613	Create end iterator on error (LWG 2723).
614	(recursive_directory_iterator(const path&, directory_options,
615	error_code*)): Likewise.
616	(recursive_directory_iterator::increment): Reset state on error.
617	(recursive_directory_iterator::pop): Define new overload.
618	* src/filesystem/ops.cc (canonical): Set error for non-existent path.
619	(file_time): Take error_code parameter and check for overflow.
620	(close_fd): Remove.
621	(do_copy_file): Report an error if source or destination is not a
622	regular file (LWG 2712). Pass error_code in file_time calls.  Just
623	use close(3) instead of close_fd, to prevent retrying on error.
624	Check if _GLIBCXX_USE_FCHMODAT is defined.
625	[_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
626	sendfile fails with ENOSYS or EINVAL. Pass non-null pointer to
627	sendfile for offset argument.
628	(copy): Update comment to refer to LWG 2681. Implement 2682 and 2683
629	resolutions.
630	(equivalent): Fix error handling and result when only one file exists.
631	(is_empty): Fix error handling.
632	(last_write_time(const path&, error_code&)): Pass error_code in
633	file_time calls.
634	(last_write_time(const path&, file_time_type, error_code&)): Handle
635	negative times correctly.
636	(permissions(const path&, perms, error_code&)): Handle
637	symlink_nofollow.
638	(read_symlink): Add missing ec.clear().
639	(status(const path&, error_code&)): Handle EOVERFLOW.
640	(temp_directory_path): Pass error_code argument to other filesystem
641	operations.
642	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
643	Update expected behaviour on error.
644	* testsuite/experimental/filesystem/iterators/pop.cc: New.
645	* testsuite/experimental/filesystem/iterators/
646	recursive_directory_iterator.cc: Update expected behaviour on error.
647	* testsuite/experimental/filesystem/operations/copy.cc: Update
648	expected behaviour for copying directories with create_symlinks.
649	Verify that error_code arguments are cleared if there's no error.
650	Remove files created by tests. Test copying directories.
651	* testsuite/experimental/filesystem/operations/copy_file.cc: Remove
652	files created by tests.
653	* testsuite/experimental/filesystem/operations/create_symlink.cc: New.
654	* testsuite/experimental/filesystem/operations/equivalent.cc: New.
655	* testsuite/experimental/filesystem/operations/exists.cc: Test
656	overload taking an error_code.
657	* testsuite/experimental/filesystem/operations/is_empty.cc: New.
658	* testsuite/experimental/filesystem/operations/last_write_time.cc:
659	New.
660	* testsuite/experimental/filesystem/operations/permissions.cc: Test
661	overload taking error_code. Test symlink_nofollow on non-symlinks.
662	* testsuite/experimental/filesystem/operations/read_symlink.cc: New.
663	* testsuite/experimental/filesystem/operations/remove_all.cc: New.
664	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
665	Add testcase for inaccessible directory.
666	* testsuite/experimental/filesystem/path/construct/range.cc: Test
667	construction from input iterators with const value types.
668	* testsuite/experimental/filesystem/path/construct/string_view.cc:
669	New.
670	* testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
671
6722016-12-07  Ville Voutilainen  <ville.voutilainen@gmail.com>
673
674	Backport from mainline
675	2016-12-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
676
677	Constrain optional's __constexpr_addressof in its return type
678	and use a constexpr addressof for optional, if available.
679	* include/experimental/optional (__constexpr_addressof):
680	Constrain in the return type instead of in a template parameter.
681	(_Has_addressof_mem)
682	(_Has_addressof_free, _Has_addressof, __constexpr_addressof):
683	Guard with #ifndef __cpp_lib_addressof_constexpr.
684	(operator->()): Use std::__addressof if it's constexpr.
685
6862016-12-06  Aditya Kumar  <hiraditya@msn.com>
687
688	* src/c++11/shared_ptr.cc (_Sp_locker::_Sp_locker(const void* p)): Add
689	noexcept on constructor.
690	(_Sp_locker::_Sp_locker(const void* p1, const void* p2)): Same.
691
6922016-12-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
693
694	Backport from mainline
695	2016-11-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
696
697	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Update comments.
698	(__CORRECT_ISO_CPP11_MATH_H_PROTO): Rename to ...
699	(__CORRECT_ISO_CPP11_MATH_H_PROTO_FP): ... this.
700	Add test for C++11 <math.h> integral overloads.
701	* configure: Regenerate.
702	* config.h.in: Regenerate.
703
704	* include/c_global/cmath [__cplusplus >= 201103L]: Reflect
705	__CORRECT_ISO_CPP11_MATH_H_PROTO to
706	__CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
707	* include/c_global/cmath [_GLIBCXX_USE_C99_MATH &&
708	!_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC && __cplusplus >= 201103L]
709	(std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO_INT.
710	(std::isfinite): Likewise.
711	(std::isinf): Likewise.
712	(std::isnan): Likewise.
713	(std::isnormal): Likewise.
714	(std::signbit): Likewise.
715	(std::isgreater): Likewise.
716	(std::isgreaterequal): Likewise.
717	(std::isless): Likewise.
718	(std::islessequal): Likewise.
719	(std::islessgreater): Likewise.
720	(std::isunordered): Likewise.
721	[__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]
722	(std::acosh): Likewise.
723	(std::asinh): Likewise.
724	(std::atanh): Likewise.
725	(std::cbrt): Likewise.
726	(std::copysign): Likewise.
727	(std::erf): Likewise.
728	(std::erfc): Likewise.
729	(std::exp2): Likewise.
730	(std::expm1): Likewise.
731	(std::fdim): Likewise.
732	(std::fma): Likewise.
733	(std::fmax): Likewise.
734	(std::fmin): Likewise.
735	(std::hypot): Likewise.
736	(std::ilogb): Likewise.
737	(std::lgamma): Likewise.
738	(std::llrint): Likewise.
739	(std::llround): Likewise.
740	(std::log1p): Likewise.
741	(std::log2): Likewise.
742	(std::logb): Likewise.
743	(std::lrint): Likewise.
744	(std::lround): Likewise.
745	(std::nearbyint): Likewise.
746	(std::nextafter): Likewise.
747	(std::nexttoward): Likewise.
748	(std::remainder): Likewise.
749	(std::remquo): Likewise.
750	(std::rint): Likewise.
751	(std::round): Likewise.
752	(std::scalbln): Likewise.
753	(std::scalbn): Likewise.
754	(std::tgamma): Likewise.
755	(std::trunc): Likewise.
756	* include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1 && __cplusplus >=
757	201103L]: Reflect __CORRECT_ISO_CPP11_MATH_H_PROTO to
758	__CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
759
7602016-11-23  Jonathan Wakely  <jwakely@redhat.com>
761
762	* testsuite/24_iterators/reverse_iterator/71771.cc: Replace calls to
763	C++14 std::rbegin and std::rend.  Use dg-options instead of
764	effective-target.
765
7662016-11-22  Uros Bizjak  <ubizjak@gmail.com>
767
768	* testsuite/Makefile.am
769	(check-DEJAGNU $(check_DEJAGNU_normal_targets)): Fix detection
770	of -j argument.
771	* testsuite/Makefile.in: Regenereate.
772
7732016-11-15  Jonathan Wakely  <jwakely@redhat.com>
774
775	* testsuite/experimental/any/typedefs.cc: Fix license text.
776	* testsuite/experimental/chrono/value.cc: Likewise.
777	* testsuite/experimental/optional/assignment/1.cc: Likewise.
778	* testsuite/experimental/optional/assignment/2.cc: Likewise.
779	* testsuite/experimental/optional/assignment/3.cc: Likewise.
780	* testsuite/experimental/optional/assignment/4.cc: Likewise.
781	* testsuite/experimental/optional/assignment/5.cc: Likewise.
782	* testsuite/experimental/optional/assignment/6.cc: Likewise.
783	* testsuite/experimental/optional/cons/move.cc: Likewise.
784	* testsuite/experimental/optional/cons/value.cc: Likewise.
785	* testsuite/experimental/optional/constexpr/cons/value.cc: Likewise.
786	* testsuite/experimental/optional/constexpr/make_optional.cc: Likewise.
787	* testsuite/experimental/optional/constexpr/observers/1.cc: Likewise.
788	* testsuite/experimental/optional/constexpr/observers/2.cc: Likewise.
789	* testsuite/experimental/optional/constexpr/observers/3.cc: Likewise.
790	* testsuite/experimental/optional/constexpr/observers/4.cc: Likewise.
791	* testsuite/experimental/optional/constexpr/observers/5.cc: Likewise.
792	* testsuite/experimental/optional/constexpr/relops/1.cc: Likewise.
793	* testsuite/experimental/optional/constexpr/relops/2.cc: Likewise.
794	* testsuite/experimental/optional/constexpr/relops/3.cc: Likewise.
795	* testsuite/experimental/optional/constexpr/relops/4.cc: Likewise.
796	* testsuite/experimental/optional/constexpr/relops/5.cc: Likewise.
797	* testsuite/experimental/optional/constexpr/relops/6.cc: Likewise.
798	* testsuite/experimental/optional/make_optional.cc: Likewise.
799	* testsuite/experimental/optional/observers/1.cc: Likewise.
800	* testsuite/experimental/optional/observers/2.cc: Likewise.
801	* testsuite/experimental/optional/observers/3.cc: Likewise.
802	* testsuite/experimental/optional/observers/4.cc: Likewise.
803	* testsuite/experimental/optional/observers/5.cc: Likewise.
804	* testsuite/experimental/optional/relops/1.cc: Likewise.
805	* testsuite/experimental/optional/relops/2.cc: Likewise.
806	* testsuite/experimental/optional/relops/3.cc: Likewise.
807	* testsuite/experimental/optional/relops/4.cc: Likewise.
808	* testsuite/experimental/optional/relops/5.cc: Likewise.
809	* testsuite/experimental/optional/relops/6.cc: Likewise.
810	* testsuite/experimental/optional/requirements.cc: Likewise.
811	* testsuite/experimental/optional/swap/1.cc: Likewise.
812	* testsuite/experimental/optional/typedefs.cc: Likewise.
813	* testsuite/experimental/ratio/value.cc: Likewise.
814	* testsuite/experimental/string_view/typedefs.cc: Likewise.
815	* testsuite/experimental/system_error/value.cc: Likewise.
816	* testsuite/experimental/tuple/tuple_size.cc: Likewise.
817	* testsuite/experimental/type_traits/value.cc: Likewise.
818
8192016-10-20  Jonathan Wakely  <jwakely@redhat.com>
820
821	PR libstdc++/78052
822	* include/bits/allocator.h (allocator<void>::construct)
823	(allocator<void>::destroy): Define.
824	* testsuite/20_util/allocator/void.cc: New test.
825
8262016-10-19  Jonathan Wakely  <jwakely@redhat.com>
827
828	PR libstdc++/77990
829	* include/bits/unique_ptr.h (unique_ptr::unique_ptr(pointer)): Set
830	pointer member after value-initialization of tuple.
831	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-errors.
832	* testsuite/20_util/unique_ptr/cons/77990.cc: New test.
833
8342016-10-17  Jonathan Wakely  <jwakely@redhat.com>
835
836	Backport from mainline:
837	2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
838
839	* doc/xml/manual/appendix_contributing.xml (contrib.organization):
840	Replace <literallayout> with nested <variablelist> elements. Update
841	some more outdated text.
842	* doc/html/*: Regenerate.
843
844	Backport from mainline:
845	2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
846
847	* doc/xml/manual/appendix_contributing.xml (contrib.organization):
848	Describe other subdirectories and add markup. Remove outdated
849	reference to check-script target.
850
8512016-10-17  Jonathan Wakely  <jwakely@redhat.com>
852
853	Backport from mainline:
854	2016-10-13  Jonathan Wakely  <jwakely@redhat.com>
855
856	* testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
857	instead of assert.
858
8592016-10-17  Jonathan Wakely  <jwakely@redhat.com>
860
861	Backport from mainline:
862	2016-10-11  Jonathan Wakely  <jwakely@redhat.com>
863
864	* include/experimental/string_view (basic_string_view::_S_compare):
865	Remove redundant const from return type.
866
8672016-10-17  Jonathan Wakely  <jwakely@redhat.com>
868
869	Backport from mainline:
870	2016-10-13  Jonathan Wakely  <jwakely@redhat.com>
871
872	* include/experimental/functional (boyer_moore_searcher)
873	(__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
874	with _GLIBCXX_STD_C.
875
8762016-10-17  Jonathan Wakely  <jwakely@redhat.com>
877
878	Backport from mainline:
879	2016-08-22  Jonathan Wakely  <jwakely@redhat.com>
880
881	PR libstdc++/77322
882	* doc/xml/manual/intro.xml: Document DR 2062 change.
883	* include/std/functional (function::swap): Add noexcept.
884	(swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
885	* testsuite/20_util/function/77322.cc: New test.
886
8872016-10-17  Jonathan Wakely  <jwakely@redhat.com>
888
889	Backport from mainline:
890	2016-08-17  Jonathan Wakely  <jwakely@redhat.com>
891
892	* testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
893	directive and use effective target instead of dg-options.
894
8952016-10-17  Jonathan Wakely  <jwakely@redhat.com>
896
897	Backport from mainline:
898	2016-08-06  Jonathan Wakely  <jwakely@redhat.com>
899
900	PR libstdc++/72820
901	* include/std/functional (_Function_base::_Base_manager::_M_clone):
902	Qualify new operator.
903	* testsuite/20_util/function/cons/72820.cc: New test.
904
9052016-10-17  Jonathan Wakely  <jwakely@redhat.com>
906
907	PR libstdc++/77994
908	* include/experimental/algorithm (experimental::sample): Convert size
909	argument to iterator difference type. Fix invalid use of input
910	iterator. Defend against overloaded comma operator.
911
9122016-10-05  Jonathan Wakely  <jwakely@redhat.com>
913
914	PR libstdc++/70564
915	* include/experimental/functional (_Not_fn): Add second parameter to
916	disambiguate copying from initialization by not_fn.
917	(not_fn): Add second argument to initialization.
918	* testsuite/experimental/functional/not_fn.cc: Copy call wrapper using
919	direct-initialization. Test abstract class.
920
921	PR libstdc++/77864
922	* include/bits/stl_map.h (map::map()): Use nothrow constructibility
923	of comparison function in conditional noexcept.
924	* include/bits/stl_multimap.h (multimap::multimap()): Likewise.
925	* include/bits/stl_multiset.h (multiset::multiset()): Likewise.
926	* include/bits/stl_set.h (set::set()): Likewise.
927	* testsuite/23_containers/map/cons/noexcept_default_construct.cc:
928	New test.
929	* testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
930	Likewise.
931	* testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
932	Likewise.
933	* testsuite/23_containers/set/cons/noexcept_default_construct.cc:
934	Likewise.
935
9362016-10-03  Jonathan Wakely  <jwakely@redhat.com>
937
938	PR libstdc++/68323
939	PR libstdc++/77794
940	* config/abi/pre/gnu-versioned-namespace.ver: Add export for
941	__cxa_thread_atexit.
942	* include/Makefile.am: Add <experimental/lfts_config.h>
943	* include/Makefile.in: Regenerate.
944	* src/filesystem/Makefile.in: Likewise.
945	* include.bits/basic_string.h: Fix nesting of versioned namespaces.
946	* include/bits/c++config: Declare versioned namespaces for literals.
947	* include/bits/regex.h (basic_regex, match_results): Add workarounds
948	for PR c++/59256.
949	* include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
950	* include/std/chrono: Likewise.
951	* include/std/complex: Likewise.
952	* include/experimental/fs_fwd.h: Declare versioned namespace.
953	* include/experimental/lfts_config.h: Declare versioned namespaces.
954	* include/experimental/algorithm: Include
955	<experimental/lfts_config.h>.
956	* include/experimental/any: Likewise.
957	* include/experimental/chrono: Likewise.
958	* include/experimental/functional: Likewise.
959	* include/experimental/optional: Likewise.
960	* include/experimental/ratio: Likewise.
961	* include/experimental/system_error: Likewise.
962	* include/experimental/tuple: Likewise.
963	* include/experimental/type_traits: Likewise.
964	* include/experimental/string_view: Likewise. Fix nesting of
965	versioned namespaces.
966	* include/experimental/string_view.tcc: Reopen inline namespace for
967	non-inline function definitions.
968	* testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
969	* testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
970	* testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
971	* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
972
9732016-09-28  Jonathan Wakely  <jwakely@redhat.com>
974
975	PR libstdc++/77686
976	* include/std/functional (_Any_data): Add may_alias attribute.
977
9782016-09-27  Jonathan Wakely  <jwakely@redhat.com>
979
980	* include/debug/safe_iterator.h (_Safe_iterator::operator++()): Fix
981	lifetime of lock.
982
9832016-09-20  Jonathan Wakely  <jwakely@redhat.com>
984
985	* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
986	(DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
987
9882016-09-19  Jonathan Wakely  <jwakely@redhat.com>
989
990	PR libstdc++/77645
991	* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
992	(DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
993	division to int to work with Python 3.
994
9952016-08-23  Jonathan Wakely  <jwakely@redhat.com>
996
997	* testsuite/23_containers/map/77334.cc: Use dg-options for C++11.
998
999	PR libstdc++/77334
1000	* include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
1001	(_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
1002	Include _Compare in noexcept.
1003	* testsuite/23_containers/map/77334.cc: New test.
1004
10052016-08-23  Jonathan Wakely  <jwakely@redhat.com>
1006
1007	* doc/xml/api.xml: Replace hardcoded links for specific versions with
1008	link to docs for all releases.
1009	* doc/html/*: Regenerate.
1010
1011	* include/bits/stl_iterator.h
1012	(operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Constrain
1013	for C++11 and later.
1014	* testsuite/24_iterators/reverse_iterator/71771.cc: New test.
1015
10162016-08-06  Jonathan Wakely  <jwakely@redhat.com>
1017
1018	Backport from mainline
1019	2016-08-05  Jonathan Wakely  <jwakely@redhat.com>
1020
1021	* include/std/functional (function::_Callable): Use lvalue in
1022	result_of expression.
1023	* testsuite/20_util/function/cons/refqual.cc: New test.
1024
1025	Backport from mainline
1026	2016-07-22  Jonathan Wakely  <jwakely@redhat.com>
1027
1028	PR libstdc++/71964
1029	* include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
1030	* testsuite/23_containers/set/allocator/71964.cc: New test.
1031
1032	Backport from mainline
1033	2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
1034
1035	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
1036	Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
1037	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
1038	Likewise.
1039	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
1040	Likewise.
1041	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
1042	Likewise.
1043	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
1044	Likewise.
1045	* testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
1046	Likewise.
1047	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
1048	Likewise.
1049
1050	Backport from mainline
1051	2016-01-18  Jonathan Wakely  <jwakely@redhat.com>
1052
1053	PR libstdc++/69243
1054	* include/std/functional (_Function_base::_M_not_empty_function):
1055	Change overloads for pointers to take arguments by value.
1056	* testsuite/20_util/function/cons/57465.cc: Add tests for
1057	pointer-to-member cases.
1058
1059	* doc/xml/manual/status_cxx2011.xml: Change "mainline GCC SVN" to
1060	refer to the release series.
1061	* doc/xml/manual/status_cxx2014.xml: Likewise.
1062	* doc/html/manual/status.xml: Regenerate.
1063
1064	* testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
1065	comments.
1066
10672016-08-02  Jonathan Wakely  <jwakely@redhat.com>
1068
1069	* testsuite/lib/libstdc++.exp (v3-build_support): Add
1070	-fno-lto to additional flags for compiling libtestc++.a objects.
1071
10722016-07-19  Jonathan Wakely  <jwakely@redhat.com>
1073
1074	Backport from mainline
1075	2016-06-06  Jonathan Wakely  <jwakely@redhat.com>
1076
1077	PR libstdc++/71320
1078	* src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
1079	Add or remove permissions according to perms argument.
1080	* testsuite/experimental/filesystem/operations/permissions.cc: New
1081	test.
1082
10832016-07-12  Jonathan Wakely  <jwakely@redhat.com>
1084
1085	Backport from mainline
1086	2015-10-02  Jonathan Wakely  <jwakely@redhat.com>
1087
1088	* testsuite/21_strings/basic_string/allocator/char/minimal.cc: Guard
1089	explicit instantiation with check for new ABI.
1090	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
1091	Likewise. Use wchar_t as char_type.
1092
1093	Backport from mainline
1094	2015-09-11  Jonathan Wakely  <jwakely@redhat.com>
1095
1096	PR libstdc++/58265
1097	* doc/xml/manual/intro.xml: Document LWG 2063 and 2064 resolutions.
1098	* doc/html/manual/bugs.html: Regenerate.
1099	* include/bits/basic_string.h (basic_string): Implement N4258. Add
1100	correct exception-specifications and propagate allocators correctly.
1101	* include/bits/basic_string.tcc (basic_string::swap): Propagate
1102	allocators correctly.
1103	* include/debug/string (__gnu_debug::basic_string): Add correct
1104	exceptions-specifications and allcoator-extended constructors.
1105	* testsuite/21_strings/basic_string/allocator/char/copy.cc: New.
1106	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
1107	New.
1108	* testsuite/21_strings/basic_string/allocator/char/minimal.cc: New.
1109	* testsuite/21_strings/basic_string/allocator/char/move.cc: New.
1110	* testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
1111	New.
1112	* testsuite/21_strings/basic_string/allocator/char/noexcept.cc: New.
1113	* testsuite/21_strings/basic_string/allocator/char/swap.cc: New.
1114	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc: New.
1115	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
1116	New.
1117	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc: New.
1118	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc: New.
1119	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
1120	New.
1121	* testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc: New.
1122	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc: New.
1123	* testsuite/util/testsuite_allocator.h (tracker_allocator): Define
1124	defaulted assignment operators.
1125
11262016-07-08  Jonathan Wakely  <jwakely@redhat.com>
1127
1128	Backport from mainline
1129	2015-06-02  Jonathan Wakely  <jwakely@redhat.com>
1130
1131	* doc/html/ext/lwg-active.html: Update to R93.
1132	* doc/html/ext/lwg-closed.html: Likewise.
1133	* doc/html/ext/lwg-defects.html: Likewise.
1134	* doc/html/manual/*: Regenerate.
1135	* doc/xml/manual/intro.xml: Document status of several DRs.
1136
11372016-07-04  Ville Voutilainen  <ville.voutilainen@gmail.com>
1138
1139	Backport from mainline
1140	2016-07-04  Ville Voutilainen  <ville.voutilainen@gmail.com>
1141
1142	PR libstdc++/71313
1143	* src/filesystem/ops.cc (remove_all(const path&, error_code&)):
1144	Call remove_all for children of a directory.
1145	* testsuite/experimental/filesystem/operations/create_directories.cc:
1146	Adjust.
1147
11482016-06-03  Release Manager
1149
1150	* GCC 5.4.0 released.
1151
11522016-05-26  Jonathan Wakely  <jwakely@redhat.com>
1153
1154	Backport from mainline
1155	2016-04-24  Jonathan Wakely  <jwakely@redhat.com>
1156
1157	PR libstdc++/70762
1158	* testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
1159	static counter to return a different path on every call.
1160
1161	* testsuite/experimental/filesystem/path/native/string.cc: Add
1162	dg-require-filesystem-ts directive.
1163
11642016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1165
1166	Backport from mainline
1167	2016-04-20  Jonathan Wakely  <jwakely@redhat.com>
1168
1169	PR libstdc++/69703
1170	* src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
1171	__codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
1172
1173	Backport from mainline
1174	2016-04-19  Jonathan Wakely  <jwakely@redhat.com>
1175
1176	PR libstdc++/69703
1177	* src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in)):
1178	Override endianness bit in mode.
1179	* testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
1180	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
1181	that little_endian mode is ignored.
1182	* testsuite/experimental/filesystem/path/native/string.cc: New test.
1183
11842016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1185
1186	Backport from mainline
1187	2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
1188
1189	* include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
1190	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1191	Test begin and end functions.
1192	* testsuite/experimental/filesystem/iterators/
1193	recursive_directory_iterator.cc: Likewise.
1194
11952016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1196
1197	Backport from mainline
1198	2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
1199
1200	PR libstdc++/71038
1201	* src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
1202	* testsuite/experimental/filesystem/operations/copy_file.cc: New test.
1203
12042016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1205
1206	Backport from mainline
1207	2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
1208
1209	* include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
1210	Overload operator* to move from rvalues.
1211
12122016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1213
1214	Backport from mainline
1215	2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
1216
1217	PR libstdc++/71036
1218	* src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
1219	* testsuite/experimental/filesystem/operations/create_directory.cc:
1220	New test.
1221
12222016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1223
1224	Backport from mainline
1225	2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
1226
1227	PR libstdc++/71037
1228	* src/filesystem/ops.cc (canonical(const path&, const path&)): Add
1229	base path to exception.
1230	* testsuite/experimental/filesystem/operations/canonical.cc: Test
1231	paths contained in exception.
1232
12332016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1234
1235	Backport from mainline
1236	2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
1237
1238	PR libstdc++/71005
1239	* include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
1240	New type.
1241	(directory_iterator::operator++(int)): Return proxy.
1242	(recursive_directory_iterator::operator++(int)): Likewise.
1243	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1244	Test post-increment.
1245	* testsuite/experimental/filesystem/iterators/
1246	recursive_directory_iterator.cc: Likewise.
1247
12482016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1249
1250	Backport from mainline
1251	2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
1252
1253	PR libstdc++/71004
1254	* include/experimental/bits/fs_dir.h (recursive_directory_iterator):
1255	Initialize scalar member variables in default constructor.
1256	* testsuite/experimental/filesystem/iterators/
1257	recursive_directory_iterator.cc: Test default construction.
1258
12592016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1260
1261	Backport from mainline
1262	2016-04-19  Jonathan Wakely  <jwakely@redhat.com>
1263
1264	PR libstdc++/70609
1265	* src/filesystem/ops.cc (close_fd): New function.
1266	(do_copy_file): Set permissions before copying file contents. Check
1267	result of closing file descriptors. Don't copy streambuf when file
1268	is empty.
1269	(copy(const path&, const path&, copy_options, error_code&)): Use
1270	lstat for source file when copy_symlinks is set.
1271	* testsuite/experimental/filesystem/operations/copy.cc: Test copy().
1272
12732016-05-25  Jonathan Wakely  <jwakely@redhat.com>
1274
1275	Backport from mainline
1276	2016-04-19  Jonathan Wakely  <jwakely@redhat.com>
1277
1278	* include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
1279	operator~ operator&=, operator|=, operator^=): Add noexcept to
1280	overloaded operators for copy_options, perms and directory_options.
1281	* src/filesystem/ops.cc (make_file_type, make_file_status,
1282	is_not_found_errno, file_time): Add noexcept.
1283
12842016-04-20  Jonathan Wakely  <jwakely@redhat.com>
1285
1286	Backport from mainline
1287	2016-01-26  Jonathan Wakely  <jwakely@redhat.com>
1288
1289	PR libstdc++/69478
1290	* include/bits/stl_algobase.h (__copy_move<_IsMove, true,
1291	random_access_iterator_tag>): Check is_move_assignable when moving.
1292	(__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
1293	Likewise.
1294	* testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
1295	* testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
1296	* testsuite/25_algorithms/move/69478.cc: New.
1297	* testsuite/25_algorithms/move_backward/69478.cc: New.
1298
1299	Backport from mainline
1300	2016-04-05  Jonathan Wakely  <jwakely@redhat.com>
1301
1302	PR libstdc++/70503
1303	* src/c++11/thread.cc (execute_native_thread_routine,
1304	execute_native_thread_routine_compat): Give internal linkage.
1305	* testsuite/30_threads/thread/70503.cc: New test.
1306
1307	Backport from mainline
1308	2016-01-25  Jonathan Wakely  <jwakely@redhat.com>
1309
1310	PR libstdc++/69464
1311	* include/Makefile.am: Add new header.
1312	* include/Makefile.in: Regenerate.
1313	* include/bits/random.h (uniform_int_distribution): Move to
1314	bits/uniform_int_dist.h.
1315	* include/bits/random.tcc (uniform_int_distribution::operator(),
1316	uniform_int_distribution::__generate_impl): Likewise.
1317	* include/bits/uniform_int_dist.h: New header.
1318	* include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
1319	<bits/uniform_int_dist.h> instead of <random>.
1320	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
1321	move_iterators/1.cc: Include correct header for uninitialized_copy.
1322	* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
1323	move_iterators/1.cc: Likewise.
1324	* testsuite/25_algorithms/nth_element/58800.cc: Include correct
1325	header for vector.
1326	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
1327	* testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
1328
13292016-04-06  Eric Botcazou  <ebotcazou@adacore.com>
1330
1331	* src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
1332	* src/Makefile.in: Regenerate.
1333
13342016-02-24  Jonathan Wakely  <jwakely@redhat.com>
1335
1336	PR libstdc++/69939
1337	* include/experimental/tuple (__apply_impl): Qualify get and forward.
1338
13392016-02-16  Tim Shen  <timshen@google.com>
1340
1341	Backport from mainline
1342	2016-02-16  Tim Shen  <timshen@google.com>
1343
1344	PR libstdc++/69794
1345	* include/bits/regex_scanner.h: Add different special character
1346	sets for grep and egrep regex.
1347	* include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
1348	* testsuite/28_regex/regression.cc: Add new testcase.
1349
13502016-02-11  Jonathan Wakely  <jwakely@redhat.com>
1351
1352	PR libstdc++/60976
1353	* include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
1354	Define partial specialization.
1355	* testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
1356	destroy members to std::allocator explicit specialization.
1357
13582016-02-10  Jonathan Wakely  <jwakely@redhat.com>
1359
1360	PR libstdc++/69116
1361	* include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
1362	define result_type for types which can be safely used with valarrays.
1363	* testsuite/26_numerics/valarray/69116.cc: New.
1364
13652016-01-18  Jonathan Wakely  <jwakely@redhat.com>
1366
1367	PR libstdc++/60637
1368	* include/c_global/cmath (signbit) [__cplusplus < 201103L]: Use
1369	__builtin_signbitf or __builtin_signbitl as appropriate.
1370	* testsuite/26_numerics/headers/cmath/60637.cc: New.
1371
13722016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
1373
1374	Backport from mainline
1375	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
1376	__int128 symbols.
1377
13782016-01-12  Jonathan Wakely  <jwakely@redhat.com>
1379
1380	PR libstdc++/69092
1381	* include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
1382	Remove _GLIBCXX_NOEXCEPT.
1383	testsuite/21_strings/basic_string/cons/char/69092.cc: New.
1384
1385	PR libstdc++/68995
1386	* include/std/functional (_Function_handler::_M_invoke): Qualify
1387	__callable_functor.
1388	* testsuite/20_util/function/68995.cc: New.
1389
1390	PR libstdc++/69005
1391	PR libstdc++/69222
1392	* include/std/functional (function::_Invoke): Remove, use result_of.
1393	(function::_Callable): Replace alias template with class template
1394	and use partial specialization instead of _NotSelf alias template.
1395	(function(_Functor)): Add "not self" constraint so that _Callable is
1396	not used while type is incomplete.
1397	* testsuite/20_util/function/69222.cc: New.
1398
13992015-12-27  Edward Smith-Rowland  <3dw4rd@verizon.net>
1400
1401	* include/bits/c++0x_warning.h Remove experimental language.
1402
14032015-12-16  Jonathan Wakely  <jwakely@redhat.com>
1404
1405	PR libstdc++/68912
1406	* include/std/functional (_Bind::operator()): Use lvalue functor to
1407	deduce return type.
1408	* testsuite/20_util/bind/68912.cc: New.
1409
1410	PR libstdc++/68921
1411	* src/c++11/futex.cc
1412	(__atomic_futex_unsigned_base::_M_futex_wait_until): Use null pointer
1413	as timeout argument.
1414
14152015-12-15  Tim Shen  <timshen@google.com>
1416
1417	Backport from mainline
1418	2015-12-15  Tim Shen  <timshen@google.com>
1419
1420	PR libstdc++/68863
1421	* include/bits/regex_executor.tcc (_Executor::_M_lookahead):
1422	Copy the captured content for lookahead, so that the backreferences
1423	inside can refer to them.
1424	* testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
1425	New testcase.
1426
14272015-12-11  Jonathan Wakely  <jwakely@redhat.com>
1428
1429	* doc/doxygen/user.cfg.in: Use EXTENSION_MAPPING tag. Add new headers
1430	to INPUT. Remove obsolete XML_SCHEMA and XML_DTD tags. Update
1431	PREDEFINED macros. Set BRIEF_MEMBER_DESC for man-pages.
1432	* include/backward/strstream: Correct @file comment.
1433	* include/bits/forward_list.h: Improve Doxygen comments.
1434	* include/bits/locale_facets_nonio.h: Likewise.
1435	* include/debug/vector (_Safe_vector): Add @brief section to comment.
1436	* include/experimental/fs_fwd.h: Correct @file comment.
1437	* include/experimental/fs_ops.h: Likewise.
1438	* include/experimental/string_view.tcc: Likewise.
1439	* include/experimental/optional: Document experimental status.
1440	* include/experimental/string_view: Correct @file comment.
1441	* include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Reduce
1442	whitespace to avoid Doxygen bug.
1443	* include/std/bitset: Remove redundant @class Doxygen command. Add
1444	parentheses to avoid Doxygen bug.
1445	* include/std/mutex: Improve Doxygen comments.
1446	* include/tr2/dynamic_bitset: Add missing @param documentation.
1447	* scripts/run_doxygen: Rename man pages for std::experimental types.
1448
14492015-12-08  Jonathan Wakely  <jwakely@redhat.com>
1450
1451	* doc/xml/manual/abi.xml: Backport documentation improvements from
1452	mainline.
1453	* doc/xml/manual/configure.xml: Likewise.
1454	* doc/xml/manual/diagnostics.xml: Likewise.
1455	* doc/xml/manual/extensions.xml: Likewise.
1456	* doc/xml/manual/status_cxx2011.xml: Likewise.
1457	* doc/xml/manual/status_cxx2014.xml: Likewise.
1458	* doc/xml/manual/using.xml: Likewise.
1459	* doc/html/*: Regenerate.
1460
14612015-12-04  Jonathan Wakely  <jwakely@redhat.com>
1462
1463	PR libstdc++/56383
1464	* testsuite/20_util/enable_shared_from_this/56383.cc: New.
1465	* include/bits/shared_ptr_base.h (__enable_shared_from_this): Make
1466	friend declaration match previous declaration of
1467	__enable_shared_from_this_helper.
1468	* include/bits/shared_ptr.h (enable_shared_from_this): Likewise.
1469
14702015-12-04  Jonathan Wakely  <jwakely@redhat.com>
1471
1472	* include/experimental/bits/fs_path.h (path::_Cmpt): Move definition
1473	after __is_encoded_char explicit specializations.
1474
14752015-12-04  Jason Merrill  <jason@redhat.com>
1476
1477	* include/bits/c++config: Fix abi_tag in special modes.
1478
14792015-12-04  Release Manager
1480
1481	* GCC 5.3.0 released.
1482
14832015-11-26  Jonathan Wakely  <jwakely@redhat.com>
1484
1485	* testsuite/libstdc++-prettyprinters/debug.cc: Add -std=gnu++98 to
1486	dg-options and avoid use of uniform-init.
1487
1488	* testsuite/libstdc++-prettyprinters/simple.cc: Add -std=gnu++98 to
1489	dg-options and avoid use of uniform-init.
1490
14912015-11-26  David Edelsohn  <dje.gcc@gmail.com>
1492
1493	* configure: Regenerate.
1494
14952015-11-25  Jonathan Wakely  <jwakely@redhat.com>
1496
1497	Backport from mainline
1498	2015-11-12  Jonathan Wakely  <jwakely@redhat.com>
1499
1500	PR libstdc++/56158
1501	* include/bits/ios_base.h (_Ios_Fmtflags, _Ios_Openmode, _Ios_Iostate):
1502	Define enumerators to ensure all values of type int are valid values
1503	of the enumeration type.
1504	* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Add new cases.
1505	* testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
1506	* testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
1507
1508	Backport from mainline
1509	2015-09-17  Jonathan Wakely  <jwakely@redhat.com>
1510
1511	* include/bits/allocator.h (__shrink_to_fit_aux<T, true>::_S_do_it):
1512	Do nothing if exceptions are disabled.
1513	* include/bits/basic_string.h (basic_string::shrink_to_fit): Likewise.
1514
15152015-11-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1516
1517	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): New test.
1518	* configure.ac: Use it.
1519	* configure: Regenerate.
1520	* config.h.in: Regenerate.
1521
1522	* include/c_global/cmath [__cplusplus >= 201103L]
1523	(std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO.
1524	(std::isfinite): Likewise.
1525	(std::isinf): Likewise.
1526	(std::isnan): Likewise.
1527	(std::isnormal): Likewise.
1528	(std::signbit): Likewise.
1529	(std::isgreater): Likewise.
1530	(std::isgreaterequal): Likewise.
1531	(std::isless): Likewise.
1532	(std::islessequal): Likewise.
1533	(std::islessgreater): Likewise.
1534	(std::isunordered): Likewise.
1535	(std::acosh): Likewise.
1536	(std::asinh): Likewise.
1537	(std::atanh): Likewise.
1538	(std::cbrt): Likewise.
1539	(std::copysign): Likewise.
1540	(std::erf): Likewise.
1541	(std::erfc): Likewise.
1542	(std::exp2): Likewise.
1543	(std::expm1): Likewise.
1544	(std::fdim): Likewise.
1545	(std::fma): Likewise.
1546	(std::fmax): Likewise.
1547	(std::fmin): Likewise.
1548	(std::hypot): Likewise.
1549	(std::ilogb): Likewise.
1550	(std::lgamma): Likewise.
1551	(std::llrint): Likewise.
1552	(std::llround): Likewise.
1553	(std::log1p): Likewise.
1554	(std::log2): Likewise.
1555	(std::logb): Likewise.
1556	(std::lrint): Likewise.
1557	(std::lround): Likewise.
1558	(std::nearbyint): Likewise.
1559	(std::nextafter): Likewise.
1560	(std::nexttoward): Likewise.
1561	(std::remainder): Likewise.
1562	(std::remquo): Likewise.
1563	(std::rint): Likewise.
1564	(std::round): Likewise.
1565	(std::scalbln): Likewise.
1566	(std::scalbn): Likewise.
1567	(std::tgamma): Likewise.
1568	(std::trunc): Likewise.
1569	* include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1] (std::tr1::acosh):
1570	Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO.
1571	(std::tr1::asinh): Likewise.
1572	(std::tr1::atanh): Likewise.
1573	(std::tr1::cbrt): Likewise.
1574	(std::tr1::copysign): Likewise.
1575	(std::tr1::erf): Likewise.
1576	(std::tr1::erfc): Likewise.
1577	(std::tr1::exp2): Likewise.
1578	(std::tr1::expm1): Likewise.
1579	(std::tr1::fabs): Likewise.
1580	(std::tr1::fdim): Likewise.
1581	(std::tr1::fma): Likewise.
1582	(std::tr1::fmax): Likewise.
1583	(std::tr1::fmin): Likewise.
1584	(std::tr1::hypot): Likewise.
1585	(std::tr1::ilogb): Likewise.
1586	(std::tr1::lgamma): Likewise.
1587	(std::tr1::llrint): Likewise.
1588	(std::tr1::llround): Likewise.
1589	(std::tr1::log1p): Likewise.
1590	(std::tr1::log2): Likewise.
1591	(std::tr1::logb): Likewise.
1592	(std::tr1::lrint): Likewise.
1593	(std::tr1::lround): Likewise.
1594	(std::tr1::nearbyint): Likewise.
1595	(std::tr1::nextafter): Likewise.
1596	(std::tr1::nexttoward): Likewise.
1597	(std::tr1::remainder): Likewise.
1598	(std::tr1::remquo): Likewise.
1599	(std::tr1::rint): Likewise.
1600	(std::tr1::scalbln): Likewise.
1601	(std::tr1::scalbn): Likewise.
1602	(std::tr1::tgamma): Likewise.
1603	(std::tr1::trunc): Likewise.
1604	(std::tr1::pow): Likewise.
1605
1606	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1607	Restrict dg-xfail-if to *-*-solaris2.1[01]*.
1608
16092015-11-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
1610
1611	PR libstdc++/68448
1612	* python/hook.in: Call register_libstdcxx_printers.
1613	* python/libstdcxx/v6/__init__.py: Wrap it to
1614	register_libstdcxx_printers.
1615
16162015-11-16  Doug Evans  <dje@google.com>
1617
1618	PR libstdc++/67440
1619	* python/libstdcxx/v6/printers.py (find_type): Handle "const" in
1620	type name.
1621	* testsuite/libstdc++-prettyprinters/debug.cc: Add test for
1622	const set<int>.
1623	* testsuite/libstdc++-prettyprinters/simple.cc: Ditto.
1624	* testsuite/libstdc++-prettyprinters/simple11.cc: Ditto.
1625
16262015-11-10  Jonathan Wakely  <jwakely@redhat.com>
1627
1628	PR libstdc++/68190
1629	* include/bits/stl_multiset.h (multiset::find): Fix return types.
1630	* include/bits/stl_set.h (set::find): Likewise.
1631	* testsuite/23_containers/map/operations/2.cc: Test find return types.
1632	* testsuite/23_containers/multimap/operations/2.cc: Likewise.
1633	* testsuite/23_containers/multiset/operations/2.cc: Likewise.
1634	* testsuite/23_containers/set/operations/2.cc: Likewise.
1635
16362015-10-08  Jonathan Wakely  <jwakely@redhat.com>
1637
1638	Backport from mainline
1639	2015-09-17  Jonathan Wakely  <jwakely@redhat.com>
1640
1641	PR libstdc++/65913
1642	* include/bits/atomic_base.h (__atomic_base<_TTp>::is_lock_free(),
1643	__atomic_base<_PTp*>::is_lock_free()): Call the built-in with the
1644	immediate pointer value, not a variable.
1645	* include/std/atomic (atomic<T>::is_lock_free()): Likewise.
1646	* testsuite/29_atomics/atomic/65913.cc: New.
1647
16482015-10-07  Jonathan Wakely  <jwakely@redhat.com>
1649
1650	Backport Filesystem TS fixes from mainline.
1651
1652	PR libstdc++/67173
1653	PR libstdc++/67747
1654	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check _XOPEN_VERSION
1655	and PATH_MAX for _GLIBCXX_USE_REALPATH.  Remove _GLIBCXX_ prefix
1656	from HAVE_STRUCT_DIRENT_D_TYPE.
1657	* config.h.in: Regenerate.
1658	* configure: Regenerate.
1659	* include/bits/locale_conv.h [!_GLIBCXX_USE_WCHAR_T]
1660	(__do_str_codecvt, __str_codecvt_in, __str_codecvt_out): Enable.
1661	* include/experimental/fs_dir.h (operator==, operator==):
1662	Use owner_before instead of pointer equality.
1663	(directory_iterator(std::shared_ptr<_Dir>, error_code*)): Remove.
1664	* include/experimental/fs_path.h (operator==, operator==):
1665	* include/experimental/fs_path.h [!_GLIBCXX_USE_WCHAR_T]
1666	(path::wstring, path::generic_wstring): Disable.
1667	* src/filesystem/path.cc (path::_S_convert_loc)
1668	[!_GLIBCXX_USE_WCHAR_T]: Skip conversion.
1669	* src/filesystem/Makefile.am: Add cxx11_abi_sources.
1670	* src/filesystem/Makefile.in: Regenerate.
1671	* src/filesystem/cow-dir.cc: New.
1672	* src/filesystem/cow-ops.cc: New.
1673	* src/filesystem/cow-path.cc: New.
1674	* src/filesystem/dir.cc: Define macro for new ABI.
1675	(native_readdir): Remove.
1676	(_Dir::advance): Use readdir instead of native_readdir.
1677	(recursive_directory_iterator(const path&, directory_options,
1678	error_code*)): Use swap instead of reset.
1679	(ErrorCode): Remove.
1680	(_Dir::advance): Change ErrorCode parameter to error_code*, add
1681	directory_options parameter and check it on error.
1682	(opendir): Rename to open_dir to avoid clashing with macro. Change
1683	ErrorCode parameter to error_code*.
1684	(make_shared_dir): Remove.
1685	(native_readdir) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Don't set errno.
1686	(directory_iterator(std::shared_ptr<_Dir>, error_code*)): Remove.
1687	(directory_iterator(const path&, directory_options, error_code*)):
1688	Pass options to _Dir::advance and create non-end iterator on error.
1689	(recursive_directory_iterator(const path&, directory_options,
1690	error_code*)): Clear error_code on ignored error, create non-end
1691	iterator otherwise.
1692	(recursive_directory_iterator::increment): Pass _M_options to
1693	_Dir::advance.
1694	(recursive_directory_iterator::pop): Likewise.
1695	* src/filesystem/ops.cc: Define macro for new ABI.
1696	(canonical) [!_GLIBCXX_USE_REALPATH]: Add alternative implementation.
1697	(is_dot, is_dotdot): Define new helpers.
1698	(create_directories): Fix error handling.
1699	* src/filesystem/path.cc: Define macro for new ABI.
1700	(path::_S_convert_loc) [!_GLIBCXX_USE_WCHAR_T]: Skip conversion.
1701	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1702	New.
1703	* testsuite/experimental/filesystem/iterators/
1704	recursive_directory_iterator.cc: New.
1705	* testsuite/experimental/filesystem/operations/canonical.cc: New.
1706	* testsuite/experimental/filesystem/operations/create_directories.cc:
1707	New.
1708	* testsuite/experimental/filesystem/operations/exists.cc: Add more
1709	tests.
1710	* testsuite/experimental/filesystem/operations/absolute.cc: Add test
1711	variables.
1712	* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
1713	* testsuite/experimental/filesystem/operations/current_path.cc:
1714	Likewise.
1715	* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
1716	* testsuite/experimental/filesystem/operations/status.cc: Likewise.
1717	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1718	Likewise.
1719	* testsuite/experimental/filesystem/path/assign/assign.cc: Check for
1720	wchar_t support.
1721	* testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
1722	* testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
1723
17242015-10-02  Jonathan Wakely  <jwakely@redhat.com>
1725
1726	PR libstdc++/65049
1727	* include/bits/char_traits.h (char_traits<char>::compare,
1728	char_traits<char>::find, char_traits<char>::move,
1729	char_traits<char>::copy, char_traits<char>::assign): Check for zero
1730	length.
1731	(char_traits<wchar_t>::compare, char_traits<wchar_t>::find,
1732	char_traits<wchar_t>::move, char_traits<wchar_t>::copy,
1733	char_traits<wchar_t>::assign): Likewise.
1734	(char_traits<char16_t>::move, char_traits<char16_t>::copy): Likewise.
1735	(char_traits<char32_t>::move, char_traits<char32_t>::copy): Likewise.
1736	* include/ext/pod_char_traits.h (char_traits<character<>>::move,
1737	char_traits<character<>>::copy): Likewise.
1738	* testsuite/21_strings/char_traits/requirements/char/65049.cc: New.
1739	* testsuite/21_strings/char_traits/requirements/char16_t/65049.cc:
1740	New.
1741	* testsuite/21_strings/char_traits/requirements/char32_t/65049.cc:
1742	New.
1743	* testsuite/21_strings/char_traits/requirements/wchar_t/65049.cc:
1744	New.
1745
1746	PR libstdc++/67707
1747	* include/bits/stl_deque.h (_Deque_base::_M_move_impl): Initialize
1748	empty object.
1749	* testsuite/23_containers/deque/allocator/move.cc: Check moved-from
1750	deque.
1751	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1752	Adjust dg-error line number.
1753	* testsuite/23_containers/deque/requirements/dr438/
1754	constructor_1_neg.cc: Likewise.
1755	* testsuite/23_containers/deque/requirements/dr438/
1756	constructor_2_neg.cc: Likewise.
1757	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1758	Likewise.
1759
1760	PR libstdc++/65142
1761	* src/c++11/random.cc (random_device::_M_getval()): Check read result
1762	and retry after short reads.
1763
17642015-09-03  Jonathan Wakely  <jwakely@redhat.com>
1765
1766	* include/std/shared_mutex (shared_timed_mutex::shared_timed_mutex):
1767	Replace throw with __throw_bad_alloc.
1768
1769	PR libstdc++/66998
1770	* include/experimental/functional (_Not_fn): Add exception
1771	specifications and non-deduced return types.
1772	(not_fn): Add exception specification and wrap pointer-to-member.
1773	* testsuite/experimental/functional/not_fn.cc: Test in SFINAE context
1774	and test pointer-to-member.
1775
1776	Backport from mainline
1777	2015-08-27  Jonathan Wakely  <jwakely@redhat.com>
1778
1779	PR libstdc++/67374
1780	* include/bits/range_access.h (valarray, begin, end): Declare.
1781	* testsuite/26_numerics/valarray/range_access.cc: Test const
1782	overloads.
1783	* testsuite/26_numerics/valarray/range_access2.cc: New.
1784
1785	Backport from mainline
1786	2015-07-24  Jonathan Wakely  <jwakely@redhat.com>
1787
1788	* include/bits/atomic_futex.h [_GLIBCXX_HAVE_LINUX_FUTEX]
1789	(_M_load_and_test_until): Whitespace.
1790	(_M_load_and_test): Value-initialize the unused durations.
1791	(_M_load_when_equal): Add missing return value.
1792
1793	Backport from mainline
1794	2015-07-13  Jonathan Wakely  <jwakely@redhat.com>
1795
1796	PR libstdc++/66855
1797	* src/c++11/codecvt.cc (__codecvt_utf8_utf16_base::do_in): Override
1798	endianness bit in mode.
1799	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: New.
1800
1801	Backport from mainline
1802	2015-04-27  Dmitry Prokoptsev  <dprokoptsev@gmail.com>
1803		    Michael Hanselmann  <public@hansmi.ch>
1804
1805	PR libstdc++/62258
1806	* libsupc++/eh_ptr.cc (rethrow_exception): Increment count of
1807	uncaught exceptions.
1808	* testsuite/18_support/exception_ptr/62258.cc: New.
1809
18102015-08-28  Tim Shen  <timshen@google.com>
1811
1812	Backport from mainline
1813	2015-08-28  Tim Shen  <timshen@google.com>
1814
1815	PR libstdc++/67362
1816	* include/bits/regex_scanner.tcc (_Scanner<>::_M_scan_normal):
1817	Always returns ordinary char token if the char isn't
1818	considered a special char.
1819	* testsuite/28_regex/regression.cc: New test file for collecting
1820	regression testcases from, typically, bugzilla.
1821
18222015-08-20  Jonathan Wakely  <jwakely@redhat.com>
1823
1824	* python/Makefile.am: Ensure gdb.py is installed for libstdc++ not
1825	libstdc++fs.
1826	* python/Makefile.in: Regenerate.
1827
18282015-08-18  Jonathan Wakely  <jwakely@redhat.com>
1829
1830	Backport Filesystem TS from mainline
1831	* acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS,
1832	GLIBCXX_CHECK_FILESYSTEM_DEPS): Define.
1833	* configure.ac: Use them.
1834	* configure: Regenerate.
1835	* config.h.in: Regenerate.
1836	* include/Makefile.am: Add filesystem headers. Fix order of headers.
1837	* include/Makefile.in: Regenerate.
1838	* include/bits/locale_conv.h (__do_str_codecvt, __str_codecvt_in,
1839	__str_codecvt_out, wstring_convert): Refactor to move all conversion
1840	logic to non-member functions.
1841	* include/bits/quoted_string.h (_Quoted_string, operator<<,
1842	operator>>): Move from <iomanip> to new header.
1843	* include/experimental/filesystem: New.
1844	* include/experimental/fs_dir.h: New.
1845	* include/experimental/fs_fwd.h: New.
1846	* include/experimental/fs_ops.h: New.
1847	* include/experimental/fs_path.h: New.
1848	* include/std/iomanip (_Quoted_string, operator<<, operator>>): Move
1849	to <bits/quoted_string.h>.
1850	* libstdcxx/v6/printers.py (StdExpPathPrinter): Define.
1851	* scripts/testsuite_flags.in: Add filesystem dir to ldflags.
1852	* src/Makefile.am: Add filesystem sub-dir.
1853	* src/Makefile.in: Regenerate.
1854	* src/filesystem/Makefile.am: New.
1855	* src/filesystem/Makefile.in: New.
1856	* src/filesystem/dir.cc: New.
1857	* src/filesystem/ops.cc: New.
1858	* src/filesystem/path.cc: New.
1859	* testsuite/experimental/filesystem/operations/absolute.cc: New.
1860	* testsuite/experimental/filesystem/operations/copy.cc: New.
1861	* testsuite/experimental/filesystem/operations/current_path.cc: New.
1862	* testsuite/experimental/filesystem/operations/exists.cc: New.
1863	* testsuite/experimental/filesystem/operations/file_size.cc: New.
1864	* testsuite/experimental/filesystem/operations/status.cc: New.
1865	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1866	New.
1867	* testsuite/experimental/filesystem/path/append/path.cc: New.
1868	* testsuite/experimental/filesystem/path/assign/assign.cc: New.
1869	* testsuite/experimental/filesystem/path/assign/copy.cc: New.
1870	* testsuite/experimental/filesystem/path/compare/compare.cc: New.
1871	* testsuite/experimental/filesystem/path/compare/path.cc: New.
1872	* testsuite/experimental/filesystem/path/compare/strings.cc: New.
1873	* testsuite/experimental/filesystem/path/concat/path.cc: New.
1874	* testsuite/experimental/filesystem/path/concat/strings.cc: New.
1875	* testsuite/experimental/filesystem/path/construct/copy.cc: New.
1876	* testsuite/experimental/filesystem/path/construct/default.cc: New.
1877	* testsuite/experimental/filesystem/path/construct/locale.cc: New.
1878	* testsuite/experimental/filesystem/path/construct/range.cc: New.
1879	* testsuite/experimental/filesystem/path/decompose/extension.cc: New.
1880	* testsuite/experimental/filesystem/path/decompose/filename.cc: New.
1881	* testsuite/experimental/filesystem/path/decompose/parent_path.cc:
1882	New.
1883	* testsuite/experimental/filesystem/path/decompose/relative_path.cc:
1884	New.
1885	* testsuite/experimental/filesystem/path/decompose/root_directory.cc:
1886	New.
1887	* testsuite/experimental/filesystem/path/decompose/root_name.cc: New.
1888	* testsuite/experimental/filesystem/path/decompose/root_path.cc: New.
1889	* testsuite/experimental/filesystem/path/decompose/stem.cc: New.
1890	* testsuite/experimental/filesystem/path/generic/generic_string.cc:
1891	New.
1892	* testsuite/experimental/filesystem/path/itr/traversal.cc: New.
1893	* testsuite/experimental/filesystem/path/modifiers/clear.cc: New.
1894	* testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
1895	New.
1896	* testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
1897	New.
1898	* testsuite/experimental/filesystem/path/modifiers/
1899	replace_extension.cc: New.
1900	* testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
1901	New.
1902	* testsuite/experimental/filesystem/path/modifiers/swap.cc: New.
1903	* testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
1904	New.
1905	* testsuite/experimental/filesystem/path/query/empty.cc: New.
1906	* testsuite/experimental/filesystem/path/query/has_extension.cc: New.
1907	* testsuite/experimental/filesystem/path/query/has_filename.cc: New.
1908	* testsuite/experimental/filesystem/path/query/has_parent_path.cc:
1909	New.
1910	* testsuite/experimental/filesystem/path/query/has_relative_path.cc:
1911	New.
1912	* testsuite/experimental/filesystem/path/query/has_root_directory.cc:
1913	New.
1914	* testsuite/experimental/filesystem/path/query/has_root_name.cc: New.
1915	* testsuite/experimental/filesystem/path/query/has_root_path.cc: New.
1916	* testsuite/experimental/filesystem/path/query/has_stem.cc: New.
1917	* testsuite/experimental/filesystem/path/query/is_relative.cc: New.
1918	* testsuite/lib/dg-options.exp (dg-require-filesystem-ts): Define.
1919	* testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Define.
1920	* testsuite/util/testsuite_fs.h: New.
1921
19222015-08-18  Jonathan Wakely  <jwakely@redhat.com>
1923
1924	* Makefile.in: Regenerate with automake-1.11.6.
1925	* aclocal.m4: Likewise.
1926	* configure: Likewise.
1927	* doc/Makefile.in: Likewise.
1928	* include/Makefile.in: Likewise.
1929	* libsupc++/Makefile.in: Likewise.
1930	* po/Makefile.in: Likewise.
1931	* python/Makefile.in: Likewise.
1932	* src/Makefile.in: Likewise.
1933	* src/c++11/Makefile.in: Likewise.
1934	* src/c++98/Makefile.in: Likewise.
1935	* testsuite/Makefile.in: Likewise.
1936
19372015-07-29  Tim Shen  <timshen@google.com>
1938
1939	Backport from mainline
1940	2015-07-29  Tim Shen  <timshen@google.com>
1941
1942	PR libstdc++/67015
1943	* include/bits/regex_compiler.h (_Compiler<>::_M_expression_term,
1944	_BracketMatcher<>::_M_add_collating_element): Change signature
1945	to make checking the and of bracket expression easier.
1946	* include/bits/regex_compiler.tcc (_Compiler<>::_M_expression_term):
1947	Treat '-' as a valid literal if it's at the end of bracket expression.
1948	* testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
1949	New testcases.
1950
19512015-07-16  Release Manager
1952
1953	* GCC 5.2.0 released.
1954
19552015-07-02  Jonathan Wakely  <jwakely@redhat.com>
1956
1957	* acinclude.m4 (GLIBCXX_DEFAULT_ABI): Change valid arguments for
1958	--with-default-libstdcxx-abi
1959	* configure: Regenerate.
1960	* doc/xml/manual/configure.xml: Document valid arguments.
1961
1962	* include/bits/locale_conv.h (wstring_convert): Use __cxx11 inline
1963	namespace in new ABI.
1964	(wstring_convert::_M_conv): Handle empty range.
1965
19662015-06-26  Jonathan Wakely  <jwakely@redhat.com>
1967
1968	* include/bits/stl_bvector.h (vector<bool>::vector()): Add noexcept.
1969	* include/bits/stl_map.h (map::map()): Likewise.
1970	* include/bits/stl_multimap.h (multimap::multimap()): Likewise.
1971	* include/bits/stl_multiset.h (multiset::multiset()): Likewise.
1972	* include/bits/stl_set.h (set::set()): Likewise.
1973
19742015-06-24  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
1975
1976	PR target/66200
1977	* configure.host (host_cpu): Add aarch64 case.
1978	* config/cpu/aarch64/atomic_word.h: New file.
1979
19802015-06-22  Jonathan Wakely  <jwakely@redhat.com>
1981
1982	Backport from mainline
1983	2015-06-16  Jonathan Wakely  <jwakely@redhat.com>
1984
1985	PR libstdc++/65393
1986	* src/c++11/thread.cc (thread::_M_make_thread): Replace shared_ptr
1987	copies with moves.
1988
1989	Backport from mainline
1990	2015-05-17  François Dumont  <fdumont@gcc.gnu.org>
1991
1992	* include/bits/unordered_map.h (unordered_map, unordered_multimap): Add
1993	missing constructors.
1994	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
1995	Likewise.
1996	* include/debug/unordered_map (unordered_map, unordered_multimap): Add
1997	missing constructors.
1998	* include/debug/unordered_set (unordered_set, unordered_multiset):
1999	Likewise.
2000	* include/profile/unordered_map (unordered_map, unordered_multimap): Add
2001	missing constructors.
2002	* include/profile/unordered_set (unordered_set, unordered_multiset):
2003	Likewise.
2004	* testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
2005	invocations.
2006	* testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
2007	* testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
2008	* testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.
2009
20102015-06-22  Jonathan Wakely  <jwakely@redhat.com>
2011
2012	Backport from mainline
2013	2015-05-14  Nathan Myers  <ncm@cantrip.org>
2014	    Jonathan Wakely  <jwakely@redhat.com>
2015
2016	PR libstdc++/66055
2017	* include/std/unordered_map (unordered_map, unordered_multimap): Add
2018	missing constructors.
2019	* include/std/unordered_set (unordered_set, unordered_multiset):
2020	Likewise.
2021	* testsuite/23_containers/unordered_map/cons/66055.cc: New.
2022	* testsuite/23_containers/unordered_multimap/cons/66055.cc: New.
2023	* testsuite/23_containers/unordered_multiset/cons/66055.cc: New.
2024	* testsuite/23_containers/unordered_set/cons/66055.cc: New.
2025
20262015-06-15  Jonathan Wakely  <jwakely@redhat.com>
2027
2028	Backport from mainline
2029	2015-06-09  Jonathan Wakely  <jwakely@redhat.com>
2030
2031	PR libstdc++/66030
2032	* config/abi/pre/gnu.ver: Export codecvt_byname and codecvt symbols
2033	for mingw32.
2034
20352015-06-12  Jonathan Wakely  <jwakely@redhat.com>
2036
2037	PR libstdc++/66464
2038	* src/c++11/codecvt.cc (codecvt_utf16_base<char32_t>::do_max_length):
2039	Return 4 not 3.
2040
20412015-06-08  Jonathan Wakely  <jwakely@redhat.com>
2042
2043	Backported from mainline
2044	2015-06-01  Jonathan Wakely  <jwakely@redhat.com>
2045
2046	* testsuite/lib/libstdc++.exp (libstdc++_init): Unset LANGUAGE
2047	environment variable.
2048
2049	PR libstdc++/66354
2050	* include/bits/stl_algobase.h (__fill_a): Check length before calling
2051	memset.
2052
2053	PR libstdc++/66327
2054	* include/bits/stl_algobase.h (__equal<true>::equal): Do not call
2055	memcmp for empty ranges.
2056	(__lexicographical_compare<true>::__lc): Likewise.
2057
2058	Backported from mainline
2059	2015-06-02  Jonathan Wakely  <jwakely@redhat.com>
2060
2061	* doc/xml/manual/abi.xml: Document versioning for 5.1.0 release.
2062	* doc/xml/manual/evolution.xml: Fix typos.
2063	* doc/html/manual/*: Regenerate.
2064
2065	Backported from mainline
2066	2015-04-21  Jonathan Wakely  <jwakely@redhat.com>
2067
2068	* doc/xml/manual/configure.xml: Update descriptions of options
2069	affecting dual ABI and add cross-references.
2070	* doc/xml/manual/strings.xml: Clarify that string isn't COW now.
2071	* doc/xml/manual/using.xml: Document ABI transition.
2072	* doc/html/*: Regenerate.
2073
2074	Backported from mainline
2075	2015-04-20  Jonathan Wakely  <jwakely@redhat.com>
2076
2077	* doc/xml/manual/concurrency_extensions.xml: Update documentation
2078	on atomics.
2079	* doc/xml/manual/using.xml: Likewise. Improve markup.
2080	* doc/html/*: Regenerate.
2081
20822015-06-08  Jonathan Wakely  <jwakely@redhat.com>
2083
2084	PR libstdc++/66441
2085	* testsuite/22_locale/conversions/string/66441.cc: New.
2086	* include/bits/locale_conv.h (__do_str_codecvt): Reserve enough space
2087	in the output string for BOM and complete result.
2088
2089	PR libstdc++/66417
2090	* src/c++11/codecvt.cc (write_utf16_code_point): Use adjust_byte_order
2091	for single UTF-16 units.
2092	* testsuite/22_locale/codecvt/codecvt_utf16/66417.cc: New.
2093
20942015-06-04  Renlin Li  <renlin.li@arm.com>
2095
2096	Backported from mainline
2097	2015-06-02  Renlin Li  <renlin.li@arm.com>
2098
2099	* testsuite/27_io/fpos/14775.cc: Add _GLIBCXX_HAVE_LIMIT_FSIZE check.
2100
21012015-05-28  Jonathan Wakely  <jwakely@redhat.com>
2102
2103	PR libstdc++/65352
2104	* include/profile/array (array::data): Use _S_ptr.
2105	* include/debug/array (array::data): Likewise.
2106
2107	PR libstdc++/65352
2108	* include/std/array (__array_traits::_S_ptr): New function.
2109	(array::data): Use _S_ptr to avoid creating invalid reference.
2110	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
2111	dg-error line numbers.
2112	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
2113	likewise.
2114
2115	PR libstdc++/66017
2116	* include/bits/stl_tree.h (_Rb_tree_node): Use __aligned_membuf.
2117	(_Rb_tree_iterator, _Rb_tree_const_iterator): Support construction
2118	from _Base_ptr.
2119	(_Rb_tree_const_iterator::_M_const_cast): Remove static_cast.
2120	(_Rb_tree::begin, _Rb_tree::end): Remove static_cast.
2121	* include/ext/aligned_buffer.h (__aligned_membuf): New type using
2122	alignment of _Tp as a member subobject, not as a complete object.
2123	* python/libstdcxx/v6/printers.py (StdRbtreeIteratorPrinter): Lookup
2124	_Link_type manually as it might not be in the debug info.
2125
2126	Backported from mainline
2127	2015-05-13  Jonathan Wakely  <jwakely@redhat.com>
2128
2129	* include/bits/basic_string.h (basic_string::basic_string()): Make
2130	noexcept conditional on allocator (LWG 2455).
2131
2132	Backported from mainline
2133	2015-05-01  Jonathan Wakely  <jwakely@redhat.com>
2134
2135	* include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
2136
21372015-05-26  Doug Evans  <dje@google.com>
2138
2139	Backported from mainline
2140	2015-04-29  Doug Evans  <dje@google.com>
2141
2142	PR libstdc++/65839
2143	* python/libstdcxx/v6/xmethods.py (get_bool_type): New function.
2144	Replace all lookups of "bool" with this.
2145	(get_std_size_type): New function.  Replace all lookups of std::size_t
2146	with this.
2147	(*Worker): New method get_result_type.
2148	(DequeWorkerBase.__init__): New arg val_type.  All callers updated.
2149	(ListWorkerBase.__init__): New arg val_type.  All callers updated.
2150	(UniquePtrGetWorker.__init__): New arg elem_type.  All callers updated.
2151	Delete setting of name, enabled.
2152	(UniquePtrDerefWorker.__init__): New arg elem_type.  All callers
2153	updated.  Delete setting of name.
2154	(UniquePtrMethodsMatcher): Rewrite for consistency with all other
2155	libstdc++ xmethod matchers.
2156	* testsuite/libstdc++-xmethods/array.cc: Add whatis tests.
2157	* testsuite/libstdc++-xmethods/associative-containers.cc: Ditto.
2158	* testsuite/libstdc++-xmethods/deque.cc: Ditto.
2159	* testsuite/libstdc++-xmethods/forwardlist.cc: Ditto.
2160	* testsuite/libstdc++-xmethods/list.cc: Ditto.
2161	* testsuite/libstdc++-xmethods/unique_ptr.cc: Ditto.
2162	* testsuite/libstdc++-xmethods/vector.cc: Ditto.
2163
21642015-05-26  Doug Evans  <dje@google.com>
2165
2166	Backported from mainline
2167	2015-04-29  Doug Evans  <dje@google.com>
2168
2169	Use consistent naming for value type attributes.
2170	* python/libstdcxx/v6/xmethods.py (ArrayWorkerBase): Rename _valtype
2171	to _val_type.
2172	(ArraySizeWorker, ArrayEmptyWorker): Ditto.
2173	(ArrayFrontWorker, ArrayBackWorker): Ditto.
2174	(ArrayAtWorker, ArraySubscriptWorker): Ditto.
2175	(DequeWorkerBase): Rename elemtype to val_type.
2176	(ForwardListWorkerBase): Rename _elem_type to _val_type.
2177	(ForwardListFrontWorker): Ditto.  And rename elem_address to
2178	val_address.
2179	(ForwardListMethodsMatcher): Rename elem_type to val_type.
2180	(VectorWorkerBase): Rename _elemtype to _val_type.
2181
21822015-05-22  David Edelsohn  <dje.gcc@gmail.com>
2183
2184	Backported from mainline
2185	2015-05-21  David Edelsohn  <dje.gcc@gmail.com>
2186
2187	PR target/66224
2188	* config/cpu/powerpc/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER):
2189	Don't use isync. Use lwsync if available.
2190	* configure.host (atomic_word_dir) [aix[56789]*]: Delete to use
2191	powerpc cpu definition.
2192
21932015-05-07  Renlin Li  <renlin.li@arm.com>
2194
2195	Backported from mainline
2196	2015-04-22  Renlin Li  <renlin.li@arm.com>
2197
2198	* testsuite/lib/dg-options.exp (dg-require-thread-fence): New.
2199	* testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New.
2200	* testsuite/29_atomics/atomic_flag/clear/1.cc: Use it.
2201	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
2202	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.
2203
22042015-05-04  Jakub Jelinek  <jakub@redhat.com>
2205
2206	Backported from mainline
2207	2015-04-28  Marc Glisse  <marc.glisse@inria.fr>
2208
2209	PR libstdc++/65883
2210	* include/std/limits (numeric_limits): Add missing unsigned.
2211
22122015-05-02  Jonathan Wakely  <jwakely@redhat.com>
2213
2214	* include/experimental/any (_Internal): Check for trivially-copyable
2215	instead of nothrow move constructible.
2216	* testsuite/experimental/any/cons/nontrivial.cc: New.
2217
22182015-04-28  Doug Evans  <dje@google.com>
2219
2220	* testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
2221	Define to zero.
2222
22232015-04-28  Stephan Bergmann  <sbergman@redhat.com>
2224
2225	* include/debug/vector (_Safe_vector::operator=): Add missing returns.
2226
22272015-04-22  Release Manager
2228
2229	* GCC 5.1.0 released.
2230
22312015-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2232
2233	* scripts/extract_symvers.pl: Ignore elfdump error output.
2234
22352015-04-14  Hans-Peter Nilsson  <hp@axis.com>
2236
2237	* testsuite/29_atomics/atomic/62259.cc: Assert atomic
2238	alignment is larger-equal, not equal, to default alignment.
2239
22402015-04-13  Jonathan Wakely  <jwakely@redhat.com>
2241
2242	PR libstdc++/65754
2243	* config/abi/pre/gnu.ver: Export base object constructors for
2244	fstreams.
2245	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
2246	* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
2247	* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
2248	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2249	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
2250	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
2251	* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
2252	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
2253	* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
2254	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
2255	* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
2256	* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
2257	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2258	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2259	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
2260	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
2261	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
2262	* testsuite/27_io/basic_fstream/cons/base.cc: New.
2263
22642015-04-13  Jonathan Wakely  <jwakely@redhat.com>
2265
2266	* doc/xml/manual/evolution.xml: Document changes since 4.5 release.
2267	* doc/html/*: Regenerate.
2268
22692015-04-12  Uros Bizjak  <ubizjak@gmail.com>
2270
2271	* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
2272
22732015-04-10  Andreas Schwab  <schwab@linux-m68k.org>
2274
2275	* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
2276
2277	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
2278
22792015-04-10  Jonathan Wakely  <jwakely@redhat.com>
2280
2281	* doc/xml/manual/test.xml: Improve documentation on running a subset
2282	of tests.
2283	* doc/html/manual/test.html: Regenerate.
2284
22852015-04-10  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
2286
2287	* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
2288	for GCC 5.1 release.
2289	* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2290	Likewise.
2291
22922015-04-10  Jonathan Wakely  <jwakely@redhat.com>
2293
2294	* include/std/shared_mutex (shared_timed_mutex): Add comments to
2295	explain the logic in the non-pthread_rwlock_t version.
2296	(_Mutex): Remove redundant type.
2297	(_M_n_readers): Rename to _S_max_readers.
2298	(_M_write_entered, _M_readers): New convenience functions.
2299	(lock, lock_shared, try_lock_shared, unlock_shared): Use convenience
2300	functions. Use predicates with condition variables. Simplify bitwise
2301	operations.
2302	(try_lock_for, try_shared_lock_for): Convert duration to time_point
2303	and call try_lock_until or try_shared_lock_until respectively.
2304	(try_lock_until, try_shared_lock_until): Wait on the condition
2305	variables until the specified time passes.
2306	(unlock): Add Debug Mode assertion.
2307	(unlock_shared): Add Debug Mode assertion.
2308	* testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: New.
2309
2310	* include/std/shared_mutex (shared_timed_mutex): Only use
2311	pthread_rwlock_t when the POSIX Timeouts option is supported.
2312	* testsuite/30_threads/shared_lock/cons/5.cc: Remove
2313	dg-require-gthreads-timed.
2314	* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
2315	* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
2316	* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
2317
23182015-04-09  H.J. Lu  <hongjiu.lu@intel.com>
2319
2320	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
2321
23222015-04-09  Jonathan Wakely  <jwakely@redhat.com>
2323	    Richard Henderson  <rth@redhat.com>
2324
2325	PR libstdc++/65147
2326	* include/bits/atomic_base.h (__atomic_base<_ITp>): Increase
2327	alignment.
2328	* include/std/atomic (atomic): For types with a power of two size set
2329	alignment to at least the size.
2330	* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
2331	* testsuite/29_atomics/atomic/65147.cc: New.
2332	* testsuite/29_atomics/atomic_integral/65147.cc: New.
2333
23342015-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2335
2336	* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
2337	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2338	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2339
23402015-04-07  Jakub Jelinek  <jakub@redhat.com>
2341
2342	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
2343	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
2344	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2345	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
2346	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
2347	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
2348	* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
2349	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
2350
23512015-03-30  Jonathan Wakely  <jwakely@redhat.com>
2352
2353	PR libstdc++/65630
2354	* config/abi/pre/gnu.ver: Export operator+ for new strings.
2355	* testsuite/21_strings/basic_string/operators/char/65630.cc: New.
2356	* testsuite/21_strings/basic_string/operators/wchar_t/65630.cc: New.
2357
23582015-03-28  Tim Shen  <timshen@google.com>
2359
2360	PR libstdc++/65420
2361	* include/bits/regex_constants.h: Use constexpr variables for flags.
2362	* testsuite/28_regex/constants/constexpr.cc: New testcase.
2363
23642015-03-27  Jonathan Wakely  <jwakely@redhat.com>
2365
2366	PR libstdc++/65499
2367	* include/std/chrono: Add using-directive for literals to std::chrono.
2368	* testsuite/20_util/duration/literals/65499.cc: New.
2369
23702015-03-26  Jonathan Wakely  <jwakely@redhat.com>
2371
2372	PR libstdc++/58038
2373	PR libstdc++/60421
2374	* include/std/thread (this_thread::sleep_for): Check for negative
2375	durations.
2376	(this_thread::sleep_until): Check for times in the past.
2377	* testsuite/30_threads/this_thread/58038.cc: New.
2378	* testsuite/30_threads/this_thread/60421.cc: New.
2379
23802015-03-26  Jonathan Wakely  <jwakely@redhat.com>
2381
2382	PR libstdc++/62259
2383	PR libstdc++/65147
2384	* include/std/atomic (atomic<T>): Increase alignment for types with
2385	the same size as one of the integral types.
2386	* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
2387	* testsuite/29_atomics/atomic/62259.cc: New.
2388
23892015-03-26  Richard Henderson  <rth@redhat.com>
2390
2391	PR libstdc++/65033
2392	* include/bits/atomic_base.h (__atomic_base<T>::is_lock_free): Build
2393	a fake pointer indicating type alignment.
2394	(__atomic_base<T *>::is_lock_free): Likewise.
2395	* include/std/atomic (atomic<T>::is_lock_free): Likewise.
2396
23972015-03-25  Alan Lawrence  <alan.lawrence@arm.com>
2398
2399	PR libstdc++/33394
2400	* testsuite/21_strings/basic_string/pthread33394.cc: Use
2401	dg-additional-options.
2402
24032015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
2404
2405	PR libstdc++/65543
2406	* include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert
2407	thinko in r150387.
2408	* include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&):
2409	Likewise.
2410	* testsuite/27_io/rvalue_streams-2.cc: New.
2411
24122015-03-24  Jonathan Wakely  <jwakely@redhat.com>
2413
2414	PR libstdc++/33394
2415	* testsuite/21_strings/basic_string/pthread33394.cc: Add test.
2416
24172015-03-23  Jonathan Wakely  <jwakely@redhat.com>
2418
2419	PR libstdc++/64967
2420	* acinclude.m4: Disable dual ABI when gnu-versioned-namespace in use.
2421	* configure: Regenerate.
2422	* src/c++11/compatibility-c++0x.cc (error_category), generic_category,
2423	system_category): Use macros for versioned namespace.
2424	* src/c++11/futex.cc: Add missing end macro for versioned namespace.
2425
24262015-03-20  James Greenhalgh  <james.greenhalgh@arm.com>
2427
2428	* testsuite/17_intro/headers/c++1998/all_attributes.cc: Disable
2429	test for unused for ARM.
2430	* testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise.
2431	* testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
2432
24332015-03-20  Jonathan Wakely  <jwakely@redhat.com>
2434
2435	* include/bits/c++config (__gnu_cxx::__cxx11): Define new namespace.
2436	* include/ext/codecvt_specializations.h (encoding_state,
2437	encoding_char_traits): Remove abi-tag and use inline namespace.
2438	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line.
2439
24402015-03-19  Jason Merrill  <jason@redhat.com>
2441
2442	* config/locale/gnu/messages_members.cc: Revert abi-tag change.
2443	* src/c++11/cxx11-shim_facets.cc: Revert abi-tag change.
2444
24452015-03-18  Jonathan Wakely  <jwakely@redhat.com>
2446
2447	PR c++/65046
2448	* config/locale/gnu/messages_members.cc (Catalog_info, Catalogs,
2449	get_catalogs): Add abi-tag.
2450	* include/ext/codecvt_specializations.h (encoding_state,
2451	encoding_char_traits): Likewise.
2452	* src/c++11/cxx11-ios_failure.cc (io_error_category): Likewise.
2453	* src/c++11/cxx11-shim_facets.cc (__any_string::operator basic_string,
2454	numpunct_shim, collate_shim, time_get_shim, moneypunct_shim,
2455	money_get_shim, money_put_shim, messages_shim): Likewise.
2456	* src/c++11/future.cc (future_error_category::message): Likewise.
2457	* src/c++11/system_error.cc (generic_error_category::message,
2458	system_error_category::message): Likewise.
2459	(__sso_string): Disable -Wabi-tag warnings.
2460
24612015-03-18  Jonathan Wakely  <jwakely@redhat.com>
2462
2463	PR libstdc++/13631
2464	* config/locale/gnu/messages_members.cc (get_glibc_msg): Fix fallback
2465	implementation for old glibc. Fix whitespace.
2466
24672015-03-18  Jonathan Wakely  <jwakely@redhat.com>
2468	    Torvald Riegel  <triegel@redhat.com>
2469
2470	* acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for pthread_rwlock_t.
2471	* config.h.in: Regenerate.
2472	* configure: Regenerate.
2473	* include/std/shared_mutex: Check _GLIBCXX_USE_PTHREAD_RWLOCK_T.
2474	(shared_timed_mutex::_M_rwlock): Use PTHREAD_RWLOCK_INITIALIZER.
2475	(shared_timed_mutex::lock_shared()): Retry on EAGAIN.
2476	(shared_timed_mutex::try_lock_shared_until()): Retry on EAGAIN and
2477	EDEADLK.
2478
24792015-03-17  Jonathan Wakely  <jwakely@redhat.com>
2480
2481	* libsupc++/nested_exception.h: Do not try to derive from final
2482	classes.
2483	* testsuite/18_support/nested_exception/throw_with_nested.cc: Test
2484	final class.
2485
2486	* testsuite/30_threads/shared_lock/modifiers/1.cc: Remove name of
2487	unused exception variable.
2488	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2489	* testsuite/30_threads/shared_lock/modifiers/2.cc: Remove duplicate
2490	test.
2491	* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
2492
24932015-03-13  Jonathan Wakely  <jwakely@redhat.com>
2494
2495	* acinclude.m4: Make --enable-libstdcxx-time=auto work for dragonfly.
2496	* configure: Regenerate.
2497
2498	* include/experimental/system_error: Fix include guard.
2499
25002015-03-12  Renlin Li  <renlin.li@arm.com>
2501
2502	* testsuite/27_io/ios_base/sync_with_stdio/1.cc: Remove xfail for
2503	wrapped target.
2504
25052015-03-10  Tim Shen  <timshen@google.com>
2506
2507	PR libstdc++/64441
2508	* include/bits/regex.h (match_results<>::size,
2509	match_results<>::position, match_results<>::str,
2510	match_results<>::operator[], match_results<>::prefix,
2511	match_results<>::suffix, match_results<>::end,
2512	match_results<>::_M_resize, match_results<>::_M_unmatched_sub,
2513	match_results<>::_M_prefix, match_results<>::_M_suffix): Remove
2514	global __unmatched_sub. Add unmatched submatch as part of
2515	match_results.
2516	* include/bits/regex.tcc (__regex_algo_impl<>, regex_replace<>,
2517	regex_iterator<>::operator++): Adjust to use match_results::_M_prefix.
2518	* testsuite/28_regex/match_results/out_of_range_submatches.cc:
2519	New testcases.
2520
25212015-03-09  Jonathan Wakely  <jwakely@redhat.com>
2522
2523	PR libstdc++/64467
2524	* testsuite/28_regex/traits/char/isctype.cc: Don't test newline
2525	for newlib targets. Really fix mixed line-endings this time.
2526
25272015-03-06  Jonathan Wakely  <jwakely@redhat.com>
2528
2529	* include/std/future (future_error(error_code)): Construct base
2530	class with error_code's message.
2531	* src/c++11/future.cc (future_error::what()): Do not call c_str() on
2532	temporary string.
2533
25342015-03-05  Jonathan Wakely  <jwakely@redhat.com>
2535
2536	* include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
2537	noconv result.
2538	* testsuite/22_locale/conversions/string/2.cc: Also test UTF-8.
2539	* testsuite/22_locale/conversions/string/3.cc: Likewise, and UTF-16.
2540
25412015-03-04  Jonathan Wakely  <jwakely@redhat.com>
2542
2543	PR libstdc++/64797
2544	* include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
2545	incomplete multibyte sequences correctly.
2546	* include/std/codecvt (codecvt_utf8, codecvt_utf16,
2547	codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point.
2548	* src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character):
2549	Define constants.
2550	(is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point):
2551	Define convenience functions.
2552	(read_utf8_code_point): Return relevant constant to distinguish
2553	incomplete characters from invalid sequences.
2554	(read_utf16_code_point): Likewise. Check for invalid sequences.
2555	(ucs4_in, utf16_in): Use incomplete_mb_character constant.
2556	(utf16_out): Check for invalid sequences.
2557	(utf16_span): Fix condition.
2558	(ucs2_out): Use is_high_surrogate.
2559	(ucs2_in): Use incomplete_mb_character constant and fix condition.
2560	* testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace.
2561	* testsuite/22_locale/conversions/buffer/1.cc: New.
2562	* testsuite/22_locale/conversions/string/2.cc: Use char16_t and
2563	char32_t instead of wchar_t.
2564	* testsuite/22_locale/conversions/string/3.cc: New.
2565
25662015-03-03  Iain Sandoe  <iain@codesourcery.com>
2567
2568	PR libstdc++/64883
2569	* testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check
2570	visibility for Darwin.
2571	* testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and
2572	also deprecated.
2573	* testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
2574
25752015-03-02  Jonathan Wakely  <jwakely@redhat.com>
2576
2577	PR libstdc++/65279
2578	* include/std/scoped_allocator (__inner_type_impl,
2579	scoped_allocator_adaptor): Add defaulted copy assignment and move
2580	assignment operators.
2581	* testsuite/20_util/scoped_allocator/65279.cc: New.
2582
25832015-03-02  Jonathan Wakely  <jwakely@redhat.com>
2584
2585	PR libstdc++/64367
2586	* include/std/stdexcept (__sso_string): Don't use non-static member
2587	in sizeof.
2588
25892015-02-28  Matthias Klose  <doko@ubuntu.com>
2590
2591	PR libstdc++/65246
2592	* python/libstdcxx/v6/__init__.py: Use explicit relative imports.
2593
25942015-02-22  Jonathan Wakely  <jwakely@redhat.com>
2595
2596	* doc/xml/manual/status_cxx2011.xml: Remove duplicated information.
2597	* doc/html/manual/status.html: Regenerate.
2598
25992015-02-20  Jonathan Wakely  <jwakely@redhat.com>
2600
2601	PR libstdc++/64695
2602	* python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle new
2603	tuple layout.
2604
2605	* doc/xml/manual/status_cxx2011.xml: Document implementation-defined
2606	behavior.
2607	* doc/html/manual/status.html: Regenerate.
2608
26092015-02-19  Jonathan Wakely  <jwakely@redhat.com>
2610
2611	PR libstdc++/58357
2612	* include/bits/algorithmfwd.h (rotate): Move to inline namespace _V2.
2613	* include/bits/stl_algo.h (__rotate, rotate): Likewise.
2614
26152015-02-19  Hans-Peter Nilsson  <hp@axis.com>
2616
2617	PR testsuite/65093
2618	* testsuite/26_numerics/random/binomial_distribution/operators/values.cc
2619	(test01): Add explanatory comment.  Keep only the bd1 sub-test and
2620	split out bd2, bd3, bd4, and bd5 sub-tests into...
2621	* testsuite/26_numerics/random/binomial_distribution/operators/values2.cc,
2622	testsuite/26_numerics/random/binomial_distribution/operators/values3.cc,
2623	testsuite/26_numerics/random/binomial_distribution/operators/values4.cc,
2624	testsuite/26_numerics/random/binomial_distribution/operators/values5.cc:
2625	New separate files with the old parts.
2626
26272015-02-18  Jonathan Wakely  <jwakely@redhat.com>
2628
2629	* src/c++11/codecvt.cc (write_utf16_code_point): Fix code to output
2630	surrogate pairs.
2631	(utf16_in): Pass mode argument to write_utf16_code_point.
2632	(codecvt<char16_t, char, mbstate_t>::do_in): Set mode according to
2633	native byte order.
2634	* testsuite/22_locale/codecvt/char16_t.cc: New.
2635	* testsuite/22_locale/codecvt/in/wchar_t/1.cc: Fix typo.
2636
2637	* testsuite/22_locale/codecvt/char16_t.cc: Add dg-require-cstdint.
2638	* testsuite/22_locale/codecvt/char32_t.cc: Likewise.
2639
26402015-02-17  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
2641	    Jonathan Wakely  <jwakely@redhat.com>
2642
2643	* testsuite/22_locale/codecvt/char32_t.cc: New.
2644
26452015-02-17  Jonathan Wakely  <jwakely@redhat.com>
2646
2647	PR libstdc++/65085
2648	* include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
2649	empty string gets null-terminated.
2650	* testsuite/21_strings/basic_string/cons/char/65085.cc: New.
2651
26522015-02-13  Matthew Wahab  <matthew.wahab@arm.com>
2653
2654	* testsuite/28_regex/traits/char/isctype.cc (test01): Fix
2655	mixed line-endings introduced in last change.
2656
26572015-02-12  Matthew Wahab  <matthew.wahab@arm.com>
2658
2659	* testsuite/28_regex/traits/char/isctype.cc (test01): Replace test
2660	for __NEWLIB__ macro with a dejagnu set macro.
2661	* testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
2662
26632015-02-04  Matthew Wahab  <matthew.wahab@arm.com>
2664
2665	PR libstdc++/64467
2666	* testsuite/28_regex/traits/char/isctype.cc (test01):	Add newlib
2667	special case for '\n'.
2668	* testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
2669
26702015-02-01  Jonathan Wakely  <jwakely@redhat.com>
2671
2672	* src/c++11/futex.cc: Do not define for gthr-single.h targets.
2673
26742015-02-01  Jonathan Wakely  <jwakely@redhat.com>
2675
2676	PR libstdc++/64883
2677	* include/c_global/cstdio (gets): Use __deprecated__ attribute instead
2678	of deprecated.
2679	* include/c_std/cstdio (gets): Likewise.
2680	* testsuite/17_intro/headers/c++1998/all_attributes.cc: Avoid clashing
2681	with attributes used in darwin headers.
2682
26832015-01-29  Jakub Jelinek  <jakub@redhat.com>
2684
2685	* acinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of
2686	$vtv_cygmin = yes.  Initialize vtv_cygmin=no unconditionally first.
2687	* configure: Regenerated.
2688
26892015-01-29  H.J. Lu  <hongjiu.lu@intel.com>
2690
2691	* acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
2692	after vtv_cygmin is set.
2693	* configure: Regenerated.
2694
26952015-01-29  Matthias Klose  <doko@ubuntu.com>
2696
2697	* acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
2698	unconditionally.
2699	* configure: Regenerate.
2700
27012015-01-29  Caroline Tice  <cmtice@google.com>
2702
2703	Committing VTV Cywin/Ming patch for Patrick Wollgast
2704	* configure: Regenerate.
2705	* libsupc++/Makefile.in: Regenerate.
2706	* src/Makefile.in: Regenerate.
2707
27082015-01-29  Jonathan Wakely  <jwakely@redhat.com>
2709
2710	* include/bits/atomic_base.h: Use __always_inline__ instead of
2711	always_inline.
2712	* include/bits/atomic_futex.h: Likewise.
2713	* include/bits/c++config: Use __abi_tag__ instead of abi_tag.
2714	* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Use
2715	__packed__ instead of packed.
2716	* include/std/shared_mutex: Use __unused__ instead of unused.
2717	* testsuite/17_intro/headers/c++1998/all_attributes.cc: New.
2718	* testsuite/17_intro/headers/c++200x/all_attributes.cc: New.
2719	* testsuite/17_intro/headers/c++2014/all_attributes.cc: New.
2720
27212015-01-28  Caroline Tice  <cmtice@google.com>
2722
2723	Committing VTV Cywin/Ming patch for Patrick Wollgast
2724	* acinclude.m4: Define VTV_CYGMIN.
2725	* libsupc++/Makefile.am: Add vtv_sources only to libsupc___la_SOURCES
2726	and libsupc__convenience_la_SOURCES if VTV_CYGMIN is not set.
2727	* libsupc++/vtv_stubs.cc: Add none weak declaration of every function
2728	for Cygwin and MinGW.
2729	* src/Makefile.am: Add libvtv.la to toolexeclib_LTLIBRARIES, if
2730	VTV_CYGMIN is set. Define libvtv_la_SOURCES, libvtv_la_LDFLAGS,
2731	libvtv_la_AM_CXXFLAGS and libvtv_la_LINK if VTV_CYGMIN is set.
2732
27332015-01-28  Jonathan Wakely  <jwakely@redhat.com>
2734
2735	PR libstdc++/64828
2736	* libsupc++/Makefile.am: Compile del_opvs.cc as C++14.
2737	* libsupc++/Makefile.in: Regenerate.
2738	* src/c++11/Makefile.in: Regenerate.
2739
27402015-01-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
2741
2742	* testsuite/lib/libstdc++.exp (v3_target_compile): Remove
2743	check for unsupported.
2744	(v3_target_compile_as_c): Likewise.
2745
27462015-01-28  Richard Biener  <rguenther@suse.de>
2747
2748	PR libstdc++/64798
2749	* libsupc++/eh_alloc.cc (struct allocated_entry): Align
2750	data member.
2751	(pool::allocate): Adjust allocation size and alignment to
2752	that change.
2753	(pool::free): Adjust pointer offsetting.
2754
27552015-01-27  Jonathan Wakely  <jwakely@redhat.com>
2756
2757	PR libstdc++/64368
2758	* include/std/shared_mutex (shared_timed_mutex::try_lock_for,
2759	shared_timed_mutex::try_lock_until): Only define when POSIX thread
2760	timeouts option is supported.
2761	(shared_timed_mutex::try_shared_lock_for,
2762	shared_timed_mutex::try_shared_lock_until): Likewise.
2763
27642015-01-26  Jonathan Wakely  <jwakely@redhat.com>
2765
2766	PR libstdc++/64368
2767	* config/locale/gnu/numeric_members.cc (numpunct<char>::~numpunct(),
2768	numpunct<wchar_t>::~numpunct()): Do not set _M_data->_M_grouping.
2769	* src/c++11/cxx11-shim_facets.cc (numpunct_shim): Remove _M_grouping
2770	and use cache's _M_grouping field.
2771	(__numpunct_fill_cache): Likewise.
2772	(__moneypunct_fill_cache): Improve comments.
2773
27742015-01-26  Jonathan Wakely  <jwakely@redhat.com>
2775
2776	* testsuite/23_containers/set/operations/2.cc: Add test for
2777	non-transparent comparison function.
2778
27792015-01-25  Oleg Endo  <olegendo@gcc.gnu.org>
2780
2781	PR target/29366
2782	* config/cpu/sh/atomicity.h (__exchange_and_add, __atomic_add):
2783	Remove SH4A inline asm and lock based implementations and use the
2784	defaults from ext/atomicity.h.
2785
27862015-01-23  Jonathan Wakely  <jwakely@redhat.com>
2787
2788	* config/abi/pre/gnu.ver: Tighten GLIBCXX_3.4 patterns to not match
2789	new std::string constructors for byname facets.
2790
27912015-01-22  Richard Biener  <rguenther@suse.de>
2792
2793	PR libstdc++/64535
2794	* libsupc++/eh_alloc.cc: Include new.
2795	(bitmask_type): Remove.
2796	(one_buffer): Likewise.
2797	(emergency_buffer): Likewise.
2798	(emergency_used): Likewise.
2799	(dependents_buffer): Likewise.
2800	(dependents_used): Likewise.
2801	(class pool): New custom fixed-size arena, variable size object
2802	allocator.
2803	(emergency_pool): New global.
2804	(__cxxabiv1::__cxa_allocate_exception): Use new emergency_pool.
2805	(__cxxabiv1::__cxa_free_exception): Likewise.
2806	(__cxxabiv1::__cxa_allocate_dependent_exception): Likewise.
2807	(__cxxabiv1::__cxa_free_dependent_exception): Likewise.
2808
28092015-01-22  Tim Shen  <timshen@google.com>
2810
2811	PR libstdc++/64680
2812	* include/bits/regex.h (basic_regex<>::basic_regex,
2813	basic_regex<>::operator=, basic_regex<>::imbue): Conform to the
2814	standard interface.
2815	* testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase.
2816
28172015-01-22  Tim Shen  <timshen@google.com>
2818
2819	PR libstdc++/64649
2820	* include/bits/regex.tcc (regex_traits<>::lookup_collatename,
2821	regex_traits<>::lookup_classname): Correctly narrow input chars.
2822	* testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
2823
28242015-01-21  Jonathan Wakely  <jwakely@redhat.com>
2825
2826	* config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
2827
28282015-01-21  Jonathan Wakely  <jwakely@redhat.com>
2829
2830	* testsuite/29_atomics/atomic/64658.cc: Test stored value.
2831
28322015-01-20  Jonathan Wakely  <jwakely@redhat.com>
2833
2834	* doc/xml/manual/status_cxx2011.xml: Remove stray dbhtml tags.
2835	* doc/xml/manual/status_cxx2014.xml: Update status.
2836	* doc/html/manual/status.html: Regenerate.
2837
28382015-01-20  Jonathan Wakely  <jwakely@redhat.com>
2839
2840	PR libstdc++/64650
2841	* include/experimental/optional (bad_optional_access): Add default
2842	constructor.
2843	* testsuite/experimental/optional/requirements.cc: Test for default
2844	constructor.
2845
28462015-01-20  Jonathan Wakely  <jwakely@redhat.com>
2847
2848	* include/bits/stl_map.h (map::find<>, map::count<>,
2849	map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
2850	member function templates to perform heterogeneous lookup.
2851	* include/bits/stl_multimap.h (multimap::find<>, multimap::count<>,
2852	multimap::lower_bound<>, multimap::upper_bound<>,
2853	multimap::equal_range<>): Likewise.
2854	* include/bits/stl_multiset.h (multiset::find<>, multiset::count<>,
2855	multiset::lower_bound<>, multiset::upper_bound<>,
2856	multiset::equal_range<>): Likewise.
2857	* include/bits/stl_set.h (set::find<>, set::count<>,
2858	set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
2859	* include/bits/stl_tree.h (_Rb_tree::_S_lower_bound_tr,
2860	_Rb_tree::_S_upper_bound_tr, _Rb_tree::_M_find_tr,
2861	_Rb_tree::_M_count_tr, _Rb_tree::_M_lower_bound_tr,
2862	_Rb_tree::_M_upper_bound_tr, _Rb_tree::_M_equal_range_tr): Likewise.
2863	* testsuite/23_containers/map/operations/2.cc: New.
2864	* testsuite/23_containers/multimap/operations/2.cc: New.
2865	* testsuite/23_containers/multiset/operations/2.cc: New.
2866	* testsuite/23_containers/set/operations/2.cc: New.
2867
28682015-01-20  Jonathan Wakely  <jwakely@redhat.com>
2869
2870	* config/abi/pre/gnu.ver: Export new constructors.
2871	* include/bits/codecvt.h (codecvt_byname): Add string constructor.
2872	(codecvt_byname<char16_t>, codecvt_byname<char32_t>): Define explicit
2873	specializations and declare explicit instantiations.
2874	* include/bits/locale_classes.h (locale, collate_byname): Add string
2875	constructors.
2876	* include/bits/locale_facets.h (ctype_byname, numpunct_byname):
2877	Likewise.
2878	* include/bits/locale_facets_nonio.h (time_get_byname,
2879	time_put_byname, moneypunct_byname, messages_byname): Likewise.
2880	* src/c++11/codecvt.cc (codecvt_byname<char16_t>,
2881	codecvt_byname<char32_t>): Define explicit instantiations.
2882	* src/c++11/locale-inst.cc (time_put_byname, codecvt_byname):
2883	Instantiate string constructors.
2884	(ctype_byname): Define string constructor.
2885	* testsuite/22_locale/codecvt_byname/1.cc: New.
2886	* testsuite/22_locale/collate_byname/1.cc: New.
2887	* testsuite/22_locale/ctype_byname/2.cc: New.
2888	* testsuite/22_locale/messages_byname/1.cc: New.
2889	* testsuite/22_locale/moneypunct_byname/1.cc: New.
2890	* testsuite/22_locale/numpunct_byname/1.cc: New.
2891
28922015-01-20  Jonathan Wakely  <jwakely@redhat.com>
2893
2894	PR libstdc++/64658
2895	* include/std/atomic (atomic_init): Define.
2896	* testsuite/29_atomics/atomic/64658.cc: New.
2897
28982015-01-19  Tim Shen  <timshen@google.com>
2899
2900	PR libstdc++/64649
2901	* include/bits/regex.tcc (regex_traits<>::lookup_collatename,
2902	regex_traits<>::lookup_classname): Support forward iterators.
2903	* testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
2904	* testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
2905
29062015-01-19  Tim Shen  <timshen@google.com>
2907
2908	PR libstdc++/64584
2909	PR libstdc++/64585
2910	* include/bits/regex.h (basic_regex<>::basic_regex,
2911	basic_regex<>::assign, basic_regex<>::imbue,
2912	basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
2913	imbuing basic_regex; Make assign() transactional against exception.
2914	* include/bits/regex_compiler.h (__compile_nfa<>): Add back
2915	__compile_nfa SFINAE.
2916	* include/std/regex: Adjust include order to avoid __compile_nfa
2917	forward declaration.
2918	* testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
2919	* testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
2920
29212015-01-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
2922	    Jonathan Wakely  <jwakely@redhat.com>
2923
2924	* include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
2925	on overloads for arrays.
2926	(cbegin, cend, rbegin, rend, crbegin, crend): New.
2927	* testsuite/24_iterators/range_access_cpp14.cc: New.
2928
29292015-01-18  Jonathan Wakely  <jwakely@redhat.com>
2930
2931	PR libstdc++/64646
2932	* include/bits/stl_algo.h (__is_permutation): Also test for reaching
2933	end of the second range.
2934	* testsuite/25_algorithms/is_permutation/64646.cc: New.
2935
29362015-01-18  Jonathan Wakely  <jwakely@redhat.com>
2937
2938	* doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
2939	* doc/html/manual/status.html: Regenerate.
2940
29412015-01-18  Jonathan Wakely  <jwakely@redhat.com>
2942
2943	* include/bits/atomic_futex.h: Use mutex and condition_variable when
2944	atomic int is not lock-free. Make member variables private.
2945	* src/c++11/futex.cc: Likewise.
2946
2947	* src/c++11/futex.cc: Fix order of includes and preprocessor condition.
2948
29492015-01-17  Jonathan Wakely  <jwakely@redhat.com>
2950
2951	PR libstdc++/64638
2952	* include/bits/atomic_futex.h: Use appropriate config macros for
2953	availability of std::mutex, std::condition and std::chrono.
2954
29552015-01-17  Ville Voutilainen  <ville.voutilainen@gmail.com>
2956	    Jonathan Wakely  <jwakely@redhat.com>
2957
2958	* doc/xml/manual/status_cxx2011.xml: Update C++11 status.
2959	* doc/html/*: Regenerate.
2960
29612015-01-17  Jonathan Wakely  <jwakely@redhat.com>
2962
2963	DR 488
2964	PR libstdc++/58357
2965	* include/bits/algorithmfwd.h (rotate): Return an iterator.
2966	* include/bits/stl_algo.h (rotate, __rotate): Likewise.
2967	* testsuite/25_algorithms/rotate/dr488.cc: New.
2968	* testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
2969	* testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
2970	2.cc: Likewise.
2971	* testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
2972	pod.cc: Likewise.
2973
29742015-01-17  Jonathan Wakely  <jwakely@redhat.com>
2975
2976	PR libstdc++/60940
2977	* include/bits/atomic_base.h: Remove atomic integral typedefs as
2978	synonyms for __atomic_base<int> etc.
2979	* include/std/atomic: Make atomic_int a synonym for atomic<int> and
2980	likewise for all atomic integral types.
2981	* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
2982	* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
2983
29842015-01-17  Jonathan Wakely  <jwakely@redhat.com>
2985
2986	PR libstdc++/56785
2987	* include/std/tuple (_Tuple_impl): Remove zero-element specialization
2988	and define one-element specialization.
2989	* testsuite/20_util/tuple/56785.cc: New.
2990
29912015-01-17  Jonathan Wakely  <jwakely@redhat.com>
2992
2993	* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
2994	Remove unused header.
2995	* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
2996	Likewise.
2997	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
2998	Likewise.
2999
30002015-01-16  Jonathan Wakely  <jwakely@redhat.com>
3001
3002	* include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
3003	* include/std/locale: Include new header.
3004	* include/Makefile.am: Add it.
3005	* include/Makefile.in: Regenerate.
3006	* testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
3007	* testsuite/22_locale/conversions/string/1.cc: New.
3008	* testsuite/22_locale/conversions/string/2.cc: New.
3009	* testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
3010	* testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
3011	New.
3012
30132015-01-16  Jonathan Wakely  <jwakely@redhat.com>
3014
3015	* config/abi/pre/gnu.ver: Export new symbols.
3016	* include/Makefile.am: Add codecvt.
3017	* include/Makefile.in: Regenerate.
3018	* include/std/codecvt: New header.
3019	* src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
3020	__codecvt_utf8_utf16_base): Define specializations.
3021	* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
3022	* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
3023	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
3024	New.
3025
30262015-01-16  Torvald Riegel  <triegel@redhat.com>
3027
3028	* src/c++11/futex.cc: New file.
3029	* include/bits/atomic_futex.h: New file.
3030	* include/std/future (__future_base::_State_baseV2): Use
3031	atomic_futex_unsigned instead of mutex+condvar.
3032	* src/c++11/futex.cc: Likewise.
3033	* include/Makefile.am: Add atomic_futex.h.
3034	* include/Makefile.in: Likewise.
3035	* src/c++11/Makefile.am: Add futex.cc.
3036	* src/c++11/Makefile.in: Likewise.
3037
30382015-01-16  Jonathan Wakely  <jwakely@redhat.com>
3039
3040	* acinclude.m4: Fix typo in comment.
3041	* configure: Regenerate.
3042	* include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
3043	codecvt<char16_t, char, mbstate_t>): Declare specializations.
3044	* include/bits/locale_facets.h: Reserve space for new specializations.
3045	* src/c++11/Makefile.am: Add codecvt.cc.
3046	* src/c++11/Makefile.in: Regenerate.
3047	* src/c++11/codecvt.cc: New.
3048	* src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
3049	with -std=gnu++11.
3050	* src/c++98/Makefile.in: Regenerate.
3051	* src/c++98/locale_init.cc: Initialize new codecvt specializations.
3052	* src/c++98/localename.cc: Likewise.
3053	* config/abi/pre/gnu.ver: Exports for new codecvt specializations.
3054	* testsuite/22_locale/codecvt/utf8.cc: New.
3055	* testsuite/22_locale/locale/cons/unicode.cc: Check that new
3056	specializations are installed in locale objects.
3057
30582015-01-16  Torvald Riegel  <triegel@redhat.com>
3059
3060	* include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
3061	implementation.
3062
30632015-01-13  Jonathan Wakely  <jwakely@redhat.com>
3064
3065	PR libstdc++/64571
3066	* config/abi/pre/gnu.ver: Export fstream functions using new string.
3067
30682015-01-12  Jonathan Wakely  <jwakely@redhat.com>
3069
3070	PR libstdc++/64560
3071	* src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
3072	for RTTI support.
3073
3074	PR libstdc++/64553
3075	* src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
3076
30772015-01-10  Thomas Schwinge  <thomas@codesourcery.com>
3078
3079	* doc/xml/manual/parallel_mode.xml: Update for libgomp being
3080	renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
3081	Multi Processing Runtime Library".
3082
30832015-01-09  Jonathan Wakely  <jwakely@redhat.com>
3084
3085	PR libstdc++/64476
3086	* include/bits/stl_uninitialized.h (uninitialized_copy): Fix
3087	is_assignable arguments.
3088	* testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
3089	New.
3090
30912015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
3092
3093	* libsupc++/unwind-cxx.h: Revert previous commit.
3094
30952015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
3096
3097	* configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
3098
30992015-01-09  Tim Shen  <timshen@google.com>
3100
3101	PR libstdc++/64239
3102	* include/bits/regex.h (match_results<>::swap): Use std::swap
3103	instead of swap.
3104	* include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
3105	Likewise.
3106	* testsuite/28_regex/match_results/swap.cc: New testcase.
3107
31082015-01-08  Jonathan Wakely  <jwakely@redhat.com>
3109
3110	PR libstdc++/60132
3111	* include/std/type_traits (has_trivial_default_constructor,
3112	has_trivial_copy_constructor, has_trivial_copy_assign): Add deprecated
3113	attribute.
3114	* testsuite/20_util/has_trivial_copy_assign/requirements/
3115	explicit_instantiation.cc: Use -Wno-deprecated.
3116	* testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
3117	Likewise.
3118	* testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
3119	* testsuite/20_util/has_trivial_copy_constructor/requirements/
3120	explicit_instantiation.cc: Likewise.
3121	* testsuite/20_util/has_trivial_copy_constructor/requirements/
3122	typedefs.cc: Likewise.
3123	* testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
3124	* testsuite/20_util/has_trivial_default_constructor/requirements/
3125	explicit_instantiation.c: Likewise.
3126	* testsuite/20_util/has_trivial_default_constructor/requirements/
3127	typedefs.cc: Likewise.
3128	* testsuite/20_util/has_trivial_default_constructor/value.cc:
3129	Likewise.
3130	* testsuite/20_util/pair/requirements/dr801.cc: Replace deprecated
3131	trait.
3132	* testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
3133	* testsuite/util/testsuite_common_types.h: Likewise.
3134
31352015-01-08  Jonathan Wakely  <jwakely@redhat.com>
3136
3137	* include/bits/hashtable_policy.h: Use __bool_constant.
3138
31392015-01-07  Jonathan Wakely  <jwakely@redhat.com>
3140
3141	* libsupc++/Makefile.am: Compile del_ops.cc as C++14.
3142	* libsupc++/Makefile.in: Regenerate.
3143
31442015-01-06  Jonathan Wakely  <jwakely@redhat.com>
3145
3146	* config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
3147
31482015-01-05  Jakub Jelinek  <jakub@redhat.com>
3149
3150	Update copyright years.
3151
31522015-01-04  Jonathan Wakely  <jwakely@redhat.com>
3153
3154	PR libstdc++/64483
3155	* testsuite/18_support/exception_ptr/64241.cc: Use
3156	dg-require-atomic-builtins.
3157
31582015-01-02  Jonathan Wakely  <jwakely@redhat.com>
3159
3160	* testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
3161	date.
3162
31632015-01-02  Tim Shen  <timshen@google.com>
3164
3165	PR libstdc++/64475
3166	* include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Copy the
3167	iterator, since the original one shouldn't be mutated.
3168
31692015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
3170
3171	PR libstdc++/64422
3172	* src/c++98/misc-inst.cc (string::erase): Add missing overloads.
3173	(string::insert): Likewise.
3174	(string::replace): Likewise.
3175	(wstring::erase): Likewise.
3176	(wstring::insert): Likewise.
3177	(wstring::replace): Likewise.
3178	* testsuite/21_strings/basic_string/modifiers/64422.cc: New testcase.
3179
31802015-01-02  Jonathan Wakely  <jwakely@redhat.com>
3181
3182	PR libstdc++/64468
3183	* doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
3184
31852015-01-02  Jonathan Wakely  <jwakely@redhat.com>
3186
3187	PR libstdc++/64438
3188	* testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
3189	Revert removal of dg-require-string-conversions.
3190	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
3191	Likewise.
3192	* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
3193	Likewise.
3194	* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
3195	Likewise.
3196	* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
3197	Likewise.
3198	* testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
3199	Likewise.
3200	* testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
3201	Likewise.
3202	* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
3203	Likewise.
3204	* testsuite/21_strings/basic_string/numeric_conversions/char/
3205	stoull.cc: Likewise.
3206	* testsuite/21_strings/basic_string/numeric_conversions/char/
3207	to_string.cc: Likewise.
3208
3209Copyright (C) 2015 Free Software Foundation, Inc.
3210
3211Copying and distribution of this file, with or without modification,
3212are permitted in any medium without royalty provided the copyright
3213notice and this notice are preserved.
3214