ChangeLog revision 1.1.1.11 1 2017-10-10 Release Manager
2
3 * GCC 5.5.0 released.
4
5 2017-09-13 Jonathan Wakely <jwakely (a] 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
27 2017-09-04 Jonathan Wakely <jwakely (a] redhat.com>
28
29 Backport from mainline
30 2017-08-09 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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
107 2017-09-01 Jonathan Wakely <jwakely (a] redhat.com>
108
109 Backport from mainline
110 2016-10-06 Jonathan Wakely <jwakely (a] 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
126 2017-06-16 Jonathan Wakely <jwakely (a] 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
141 2017-06-07 Jonathan Wakely <jwakely (a] 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
148 2017-05-18 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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 (a] 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
275 2017-05-17 Jonathan Wakely <jwakely (a] redhat.com>
276
277 Backport from mainline
278 2017-03-15Xi Ruoyao<ryxi (a] 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 (a] 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 (a] redhat.com>
301
302 PR libstdc++/66059
303 * include/std/utility (_Build_index_tuple): Optimise.
304
305 2017-03-17 Jonathan Wakely <jwakely (a] redhat.com>
306
307 Backport from mainline
308 2017-03-17 Jonathan Wakely <jwakely (a] 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 (a] 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
382 2017-03-14 Jonathan Wakely <jwakely (a] redhat.com>
383
384 * testsuite/17_intro/names.cc: Undefine macros that clash with
385 identifiers in AIX system headers.
386
387 2017-03-13 Ville Voutilainen <ville.voutilainen (a] 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
395 2017-03-02 Jonathan Wakely <jwakely (a] 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
406 2017-02-14 Jonathan Wakely <jwakely (a] redhat.com>
407
408 Backport from mainline
409 2017-01-20 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] 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 (a] 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 (a] 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
464 2017-02-01 Jonathan Wakely <jwakely (a] 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
484 2017-01-22 Gerald Pfeifer <gerald (a] pfeifer.com>
485
486 Merge from mainline
487 2017-01-01 Gerald Pfeifer <gerald (a] pfeifer.com>
488
489 * doc/xml/faq.xml: Update address of C++ ABI link.
490 * doc/xml/manual/abi.xml: Ditto.
491
492 2017-01-16 Ville Voutilainen <ville.voutilainen (a] gmail.com>
493
494 Backport from mainline
495 2017-01-16 Ville Voutilainen <ville.voutilainen (a] 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
503 2017-01-15 Ville Voutilainen <ville.voutilainen (a] gmail.com>
504
505 Backport from mainline
506 2017-01-13 Ville Voutilainen <ville.voutilainen (a] 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
514 2017-01-09 Jonathan Wakely <jwakely (a] 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
521 2017-01-06 Jonathan Wakely <jwakely (a] redhat.com>
522
523 Backport from mainline
524 2017-01-03 Jonathan Wakely <jwakely (a] 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
531 2017-01-06 Jonathan Wakely <jwakely (a] 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
539 2016-12-19 Ville Voutilainen <ville.voutilainen (a] gmail.com>
540
541 Backport from mainline
542 2016-12-19 Ville Voutilainen <ville.voutilainen (a] 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
549 2016-12-13 Jonathan Wakely <jwakely (a] redhat.com>
550
551 Backport from mainline
552 2016-10-26 Uros Bizjak <ubizjak (a] 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 (a] redhat.com>
560
561 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
562 * configure: Regenerate.
563 * config.h.in: Regenerate.
564
565 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
566
567 Backport from mainline
568 2016-12-07 Jonathan Wakely <jwakely (a] 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
573 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
574
575 Backport from mainline
576 2016-11-22 Jonathan Wakely <jwakely (a] redhat.com>
577
578 PR libstdc++/78465
579 * testsuite/29_atomics/headers/atomic/macros.cc: Replace runtime tests
580 with preprocessor conditions.
581
582 2016-12-12 Jonathan Wakely <jwakely (a] 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
672 2016-12-07 Ville Voutilainen <ville.voutilainen (a] gmail.com>
673
674 Backport from mainline
675 2016-12-06 Ville Voutilainen <ville.voutilainen (a] 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
686 2016-12-06 Aditya Kumar <hiraditya (a] 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
692 2016-12-01 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
693
694 Backport from mainline
695 2016-11-21 Rainer Orth <ro (a] 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
760 2016-11-23 Jonathan Wakely <jwakely (a] 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
766 2016-11-22 Uros Bizjak <ubizjak (a] 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
773 2016-11-15 Jonathan Wakely <jwakely (a] 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
819 2016-10-20 Jonathan Wakely <jwakely (a] 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
826 2016-10-19 Jonathan Wakely <jwakely (a] 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
834 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
835
836 Backport from mainline:
837 2016-10-10 Jonathan Wakely <jwakely (a] 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 (a] 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
851 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
852
853 Backport from mainline:
854 2016-10-13 Jonathan Wakely <jwakely (a] redhat.com>
855
856 * testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
857 instead of assert.
858
859 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
860
861 Backport from mainline:
862 2016-10-11 Jonathan Wakely <jwakely (a] redhat.com>
863
864 * include/experimental/string_view (basic_string_view::_S_compare):
865 Remove redundant const from return type.
866
867 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
868
869 Backport from mainline:
870 2016-10-13 Jonathan Wakely <jwakely (a] 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
876 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
877
878 Backport from mainline:
879 2016-08-22 Jonathan Wakely <jwakely (a] 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
887 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
888
889 Backport from mainline:
890 2016-08-17 Jonathan Wakely <jwakely (a] 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
895 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
896
897 Backport from mainline:
898 2016-08-06 Jonathan Wakely <jwakely (a] 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
905 2016-10-17 Jonathan Wakely <jwakely (a] 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
912 2016-10-05 Jonathan Wakely <jwakely (a] 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
936 2016-10-03 Jonathan Wakely <jwakely (a] 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
973 2016-09-28 Jonathan Wakely <jwakely (a] redhat.com>
974
975 PR libstdc++/77686
976 * include/std/functional (_Any_data): Add may_alias attribute.
977
978 2016-09-27 Jonathan Wakely <jwakely (a] redhat.com>
979
980 * include/debug/safe_iterator.h (_Safe_iterator::operator++()): Fix
981 lifetime of lock.
982
983 2016-09-20 Jonathan Wakely <jwakely (a] redhat.com>
984
985 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
986 (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
987
988 2016-09-19 Jonathan Wakely <jwakely (a] 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
995 2016-08-23 Jonathan Wakely <jwakely (a] 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
1005 2016-08-23 Jonathan Wakely <jwakely (a] 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
1016 2016-08-06 Jonathan Wakely <jwakely (a] redhat.com>
1017
1018 Backport from mainline
1019 2016-08-05 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] 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 (a] 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
1067 2016-08-02 Jonathan Wakely <jwakely (a] redhat.com>
1068
1069 * testsuite/lib/libstdc++.exp (v3-build_support): Add
1070 -fno-lto to additional flags for compiling libtestc++.a objects.
1071
1072 2016-07-19 Jonathan Wakely <jwakely (a] redhat.com>
1073
1074 Backport from mainline
1075 2016-06-06 Jonathan Wakely <jwakely (a] 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
1083 2016-07-12 Jonathan Wakely <jwakely (a] redhat.com>
1084
1085 Backport from mainline
1086 2015-10-02 Jonathan Wakely <jwakely (a] 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 (a] 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
1126 2016-07-08 Jonathan Wakely <jwakely (a] redhat.com>
1127
1128 Backport from mainline
1129 2015-06-02 Jonathan Wakely <jwakely (a] 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
1137 2016-07-04 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1138
1139 Backport from mainline
1140 2016-07-04 Ville Voutilainen <ville.voutilainen (a] 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
1148 2016-06-03 Release Manager
1149
1150 * GCC 5.4.0 released.
1151
1152 2016-05-26 Jonathan Wakely <jwakely (a] redhat.com>
1153
1154 Backport from mainline
1155 2016-04-24 Jonathan Wakely <jwakely (a] 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
1164 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1165
1166 Backport from mainline
1167 2016-04-20 Jonathan Wakely <jwakely (a] 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 (a] 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
1184 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1185
1186 Backport from mainline
1187 2016-05-10 Jonathan Wakely <jwakely (a] 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
1195 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1196
1197 Backport from mainline
1198 2016-05-10 Jonathan Wakely <jwakely (a] 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
1204 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1205
1206 Backport from mainline
1207 2016-05-10 Jonathan Wakely <jwakely (a] redhat.com>
1208
1209 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
1210 Overload operator* to move from rvalues.
1211
1212 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1213
1214 Backport from mainline
1215 2016-05-10 Jonathan Wakely <jwakely (a] 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
1222 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1223
1224 Backport from mainline
1225 2016-05-10 Jonathan Wakely <jwakely (a] 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
1233 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1234
1235 Backport from mainline
1236 2016-05-10 Jonathan Wakely <jwakely (a] 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
1248 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1249
1250 Backport from mainline
1251 2016-05-09 Jonathan Wakely <jwakely (a] 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
1259 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1260
1261 Backport from mainline
1262 2016-04-19 Jonathan Wakely <jwakely (a] 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
1273 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1274
1275 Backport from mainline
1276 2016-04-19 Jonathan Wakely <jwakely (a] 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
1284 2016-04-20 Jonathan Wakely <jwakely (a] redhat.com>
1285
1286 Backport from mainline
1287 2016-01-26 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] 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
1329 2016-04-06 Eric Botcazou <ebotcazou (a] adacore.com>
1330
1331 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
1332 * src/Makefile.in: Regenerate.
1333
1334 2016-02-24 Jonathan Wakely <jwakely (a] redhat.com>
1335
1336 PR libstdc++/69939
1337 * include/experimental/tuple (__apply_impl): Qualify get and forward.
1338
1339 2016-02-16 Tim Shen <timshen (a] google.com>
1340
1341 Backport from mainline
1342 2016-02-16 Tim Shen <timshen (a] 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
1350 2016-02-11 Jonathan Wakely <jwakely (a] 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
1358 2016-02-10 Jonathan Wakely <jwakely (a] 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
1365 2016-01-18 Jonathan Wakely <jwakely (a] 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
1372 2016-01-16 H.J. Lu <hongjiu.lu (a] intel.com>
1373
1374 Backport from mainline
1375 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
1376 __int128 symbols.
1377
1378 2016-01-12 Jonathan Wakely <jwakely (a] 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
1399 2015-12-27 Edward Smith-Rowland <3dw4rd (a] verizon.net>
1400
1401 * include/bits/c++0x_warning.h Remove experimental language.
1402
1403 2015-12-16 Jonathan Wakely <jwakely (a] 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
1415 2015-12-15 Tim Shen <timshen (a] google.com>
1416
1417 Backport from mainline
1418 2015-12-15 Tim Shen <timshen (a] 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
1427 2015-12-11 Jonathan Wakely <jwakely (a] 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
1449 2015-12-08 Jonathan Wakely <jwakely (a] 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
1461 2015-12-04 Jonathan Wakely <jwakely (a] 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
1470 2015-12-04 Jonathan Wakely <jwakely (a] redhat.com>
1471
1472 * include/experimental/bits/fs_path.h (path::_Cmpt): Move definition
1473 after __is_encoded_char explicit specializations.
1474
1475 2015-12-04 Jason Merrill <jason (a] redhat.com>
1476
1477 * include/bits/c++config: Fix abi_tag in special modes.
1478
1479 2015-12-04 Release Manager
1480
1481 * GCC 5.3.0 released.
1482
1483 2015-11-26 Jonathan Wakely <jwakely (a] 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
1491 2015-11-26 David Edelsohn <dje.gcc (a] gmail.com>
1492
1493 * configure: Regenerate.
1494
1495 2015-11-25 Jonathan Wakely <jwakely (a] redhat.com>
1496
1497 Backport from mainline
1498 2015-11-12 Jonathan Wakely <jwakely (a] 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 (a] 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
1515 2015-11-24 Rainer Orth <ro (a] 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
1609 2015-11-20 Jan Kratochvil <jan.kratochvil (a] 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
1616 2015-11-16 Doug Evans <dje (a] 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
1626 2015-11-10 Jonathan Wakely <jwakely (a] 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
1636 2015-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1637
1638 Backport from mainline
1639 2015-09-17 Jonathan Wakely <jwakely (a] 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
1648 2015-10-07 Jonathan Wakely <jwakely (a] 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
1724 2015-10-02 Jonathan Wakely <jwakely (a] 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
1764 2015-09-03 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] 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 (a] 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 (a] gmail.com>
1803 Michael Hanselmann <public (a] 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
1810 2015-08-28 Tim Shen <timshen (a] google.com>
1811
1812 Backport from mainline
1813 2015-08-28 Tim Shen <timshen (a] 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
1822 2015-08-20 Jonathan Wakely <jwakely (a] redhat.com>
1823
1824 * python/Makefile.am: Ensure gdb.py is installed for libstdc++ not
1825 libstdc++fs.
1826 * python/Makefile.in: Regenerate.
1827
1828 2015-08-18 Jonathan Wakely <jwakely (a] 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
1922 2015-08-18 Jonathan Wakely <jwakely (a] 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
1937 2015-07-29 Tim Shen <timshen (a] google.com>
1938
1939 Backport from mainline
1940 2015-07-29 Tim Shen <timshen (a] 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
1951 2015-07-16 Release Manager
1952
1953 * GCC 5.2.0 released.
1954
1955 2015-07-02 Jonathan Wakely <jwakely (a] 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
1966 2015-06-26 Jonathan Wakely <jwakely (a] 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
1974 2015-06-24 Ramana Radhakrishnan <ramana.radhakrishnan (a] 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
1980 2015-06-22 Jonathan Wakely <jwakely (a] redhat.com>
1981
1982 Backport from mainline
1983 2015-06-16 Jonathan Wakely <jwakely (a] 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 Franois Dumont <fdumont (a] 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
2010 2015-06-22 Jonathan Wakely <jwakely (a] redhat.com>
2011
2012 Backport from mainline
2013 2015-05-14 Nathan Myers <ncm (a] cantrip.org>
2014 Jonathan Wakely <jwakely (a] 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
2026 2015-06-15 Jonathan Wakely <jwakely (a] redhat.com>
2027
2028 Backport from mainline
2029 2015-06-09 Jonathan Wakely <jwakely (a] redhat.com>
2030
2031 PR libstdc++/66030
2032 * config/abi/pre/gnu.ver: Export codecvt_byname and codecvt symbols
2033 for mingw32.
2034
2035 2015-06-12 Jonathan Wakely <jwakely (a] 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
2041 2015-06-08 Jonathan Wakely <jwakely (a] redhat.com>
2042
2043 Backported from mainline
2044 2015-06-01 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] 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 (a] 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
2082 2015-06-08 Jonathan Wakely <jwakely (a] 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
2094 2015-06-04 Renlin Li <renlin.li (a] arm.com>
2095
2096 Backported from mainline
2097 2015-06-02 Renlin Li <renlin.li (a] arm.com>
2098
2099 * testsuite/27_io/fpos/14775.cc: Add _GLIBCXX_HAVE_LIMIT_FSIZE check.
2100
2101 2015-05-28 Jonathan Wakely <jwakely (a] 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 (a] 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 (a] redhat.com>
2134
2135 * include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
2136
2137 2015-05-26 Doug Evans <dje (a] google.com>
2138
2139 Backported from mainline
2140 2015-04-29 Doug Evans <dje (a] 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
2164 2015-05-26 Doug Evans <dje (a] google.com>
2165
2166 Backported from mainline
2167 2015-04-29 Doug Evans <dje (a] 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
2182 2015-05-22 David Edelsohn <dje.gcc (a] gmail.com>
2183
2184 Backported from mainline
2185 2015-05-21 David Edelsohn <dje.gcc (a] 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
2193 2015-05-07 Renlin Li <renlin.li (a] arm.com>
2194
2195 Backported from mainline
2196 2015-04-22 Renlin Li <renlin.li (a] 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
2204 2015-05-04 Jakub Jelinek <jakub (a] redhat.com>
2205
2206 Backported from mainline
2207 2015-04-28 Marc Glisse <marc.glisse (a] inria.fr>
2208
2209 PR libstdc++/65883
2210 * include/std/limits (numeric_limits): Add missing unsigned.
2211
2212 2015-05-02 Jonathan Wakely <jwakely (a] 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
2218 2015-04-28 Doug Evans <dje (a] google.com>
2219
2220 * testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
2221 Define to zero.
2222
2223 2015-04-28 Stephan Bergmann <sbergman (a] redhat.com>
2224
2225 * include/debug/vector (_Safe_vector::operator=): Add missing returns.
2226
2227 2015-04-22 Release Manager
2228
2229 * GCC 5.1.0 released.
2230
2231 2015-04-15 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
2232
2233 * scripts/extract_symvers.pl: Ignore elfdump error output.
2234
2235 2015-04-14 Hans-Peter Nilsson <hp (a] axis.com>
2236
2237 * testsuite/29_atomics/atomic/62259.cc: Assert atomic
2238 alignment is larger-equal, not equal, to default alignment.
2239
2240 2015-04-13 Jonathan Wakely <jwakely (a] 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
2264 2015-04-13 Jonathan Wakely <jwakely (a] redhat.com>
2265
2266 * doc/xml/manual/evolution.xml: Document changes since 4.5 release.
2267 * doc/html/*: Regenerate.
2268
2269 2015-04-12 Uros Bizjak <ubizjak (a] gmail.com>
2270
2271 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
2272
2273 2015-04-10 Andreas Schwab <schwab (a] 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
2279 2015-04-10 Jonathan Wakely <jwakely (a] 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
2285 2015-04-10 Bill Schmidt <wschmidt (a] 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
2292 2015-04-10 Jonathan Wakely <jwakely (a] 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
2318 2015-04-09 H.J. Lu <hongjiu.lu (a] intel.com>
2319
2320 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
2321
2322 2015-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2323 Richard Henderson <rth (a] 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
2334 2015-04-09 Rainer Orth <ro (a] 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
2340 2015-04-07 Jakub Jelinek <jakub (a] 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
2351 2015-03-30 Jonathan Wakely <jwakely (a] 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
2358 2015-03-28 Tim Shen <timshen (a] 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
2364 2015-03-27 Jonathan Wakely <jwakely (a] 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
2370 2015-03-26 Jonathan Wakely <jwakely (a] 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
2380 2015-03-26 Jonathan Wakely <jwakely (a] 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
2389 2015-03-26 Richard Henderson <rth (a] 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
2397 2015-03-25 Alan Lawrence <alan.lawrence (a] arm.com>
2398
2399 PR libstdc++/33394
2400 * testsuite/21_strings/basic_string/pthread33394.cc: Use
2401 dg-additional-options.
2402
2403 2015-03-25 Paolo Carlini <paolo.carlini (a] 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
2412 2015-03-24 Jonathan Wakely <jwakely (a] redhat.com>
2413
2414 PR libstdc++/33394
2415 * testsuite/21_strings/basic_string/pthread33394.cc: Add test.
2416
2417 2015-03-23 Jonathan Wakely <jwakely (a] 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
2426 2015-03-20 James Greenhalgh <james.greenhalgh (a] 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
2433 2015-03-20 Jonathan Wakely <jwakely (a] 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
2440 2015-03-19 Jason Merrill <jason (a] 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
2445 2015-03-18 Jonathan Wakely <jwakely (a] 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
2461 2015-03-18 Jonathan Wakely <jwakely (a] 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
2467 2015-03-18 Jonathan Wakely <jwakely (a] redhat.com>
2468 Torvald Riegel <triegel (a] 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
2479 2015-03-17 Jonathan Wakely <jwakely (a] 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
2493 2015-03-13 Jonathan Wakely <jwakely (a] 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
2500 2015-03-12 Renlin Li <renlin.li (a] arm.com>
2501
2502 * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Remove xfail for
2503 wrapped target.
2504
2505 2015-03-10 Tim Shen <timshen (a] 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
2521 2015-03-09 Jonathan Wakely <jwakely (a] 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
2527 2015-03-06 Jonathan Wakely <jwakely (a] 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
2534 2015-03-05 Jonathan Wakely <jwakely (a] 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
2541 2015-03-04 Jonathan Wakely <jwakely (a] 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
2566 2015-03-03 Iain Sandoe <iain (a] 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
2575 2015-03-02 Jonathan Wakely <jwakely (a] 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
2583 2015-03-02 Jonathan Wakely <jwakely (a] redhat.com>
2584
2585 PR libstdc++/64367
2586 * include/std/stdexcept (__sso_string): Don't use non-static member
2587 in sizeof.
2588
2589 2015-02-28 Matthias Klose <doko (a] ubuntu.com>
2590
2591 PR libstdc++/65246
2592 * python/libstdcxx/v6/__init__.py: Use explicit relative imports.
2593
2594 2015-02-22 Jonathan Wakely <jwakely (a] redhat.com>
2595
2596 * doc/xml/manual/status_cxx2011.xml: Remove duplicated information.
2597 * doc/html/manual/status.html: Regenerate.
2598
2599 2015-02-20 Jonathan Wakely <jwakely (a] 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
2609 2015-02-19 Jonathan Wakely <jwakely (a] 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
2615 2015-02-19 Hans-Peter Nilsson <hp (a] 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
2627 2015-02-18 Jonathan Wakely <jwakely (a] 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
2640 2015-02-17 Rdiger Sonderfeld <ruediger (a] c-plusplus.de>
2641 Jonathan Wakely <jwakely (a] redhat.com>
2642
2643 * testsuite/22_locale/codecvt/char32_t.cc: New.
2644
2645 2015-02-17 Jonathan Wakely <jwakely (a] 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
2652 2015-02-13 Matthew Wahab <matthew.wahab (a] arm.com>
2653
2654 * testsuite/28_regex/traits/char/isctype.cc (test01): Fix
2655 mixed line-endings introduced in last change.
2656
2657 2015-02-12 Matthew Wahab <matthew.wahab (a] 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
2663 2015-02-04 Matthew Wahab <matthew.wahab (a] 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
2670 2015-02-01 Jonathan Wakely <jwakely (a] redhat.com>
2671
2672 * src/c++11/futex.cc: Do not define for gthr-single.h targets.
2673
2674 2015-02-01 Jonathan Wakely <jwakely (a] 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
2683 2015-01-29 Jakub Jelinek <jakub (a] 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
2689 2015-01-29 H.J. Lu <hongjiu.lu (a] intel.com>
2690
2691 * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
2692 after vtv_cygmin is set.
2693 * configure: Regenerated.
2694
2695 2015-01-29 Matthias Klose <doko (a] ubuntu.com>
2696
2697 * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
2698 unconditionally.
2699 * configure: Regenerate.
2700
2701 2015-01-29 Caroline Tice <cmtice (a] 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
2708 2015-01-29 Jonathan Wakely <jwakely (a] 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
2721 2015-01-28 Caroline Tice <cmtice (a] 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
2733 2015-01-28 Jonathan Wakely <jwakely (a] 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
2740 2015-01-28 Kyrylo Tkachov <kyrylo.tkachov (a] arm.com>
2741
2742 * testsuite/lib/libstdc++.exp (v3_target_compile): Remove
2743 check for unsupported.
2744 (v3_target_compile_as_c): Likewise.
2745
2746 2015-01-28 Richard Biener <rguenther (a] 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
2755 2015-01-27 Jonathan Wakely <jwakely (a] 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
2764 2015-01-26 Jonathan Wakely <jwakely (a] 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
2774 2015-01-26 Jonathan Wakely <jwakely (a] redhat.com>
2775
2776 * testsuite/23_containers/set/operations/2.cc: Add test for
2777 non-transparent comparison function.
2778
2779 2015-01-25 Oleg Endo <olegendo (a] 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
2786 2015-01-23 Jonathan Wakely <jwakely (a] 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
2791 2015-01-22 Richard Biener <rguenther (a] 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
2809 2015-01-22 Tim Shen <timshen (a] 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
2817 2015-01-22 Tim Shen <timshen (a] 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
2824 2015-01-21 Jonathan Wakely <jwakely (a] redhat.com>
2825
2826 * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
2827
2828 2015-01-21 Jonathan Wakely <jwakely (a] redhat.com>
2829
2830 * testsuite/29_atomics/atomic/64658.cc: Test stored value.
2831
2832 2015-01-20 Jonathan Wakely <jwakely (a] 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
2838 2015-01-20 Jonathan Wakely <jwakely (a] 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
2846 2015-01-20 Jonathan Wakely <jwakely (a] 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
2868 2015-01-20 Jonathan Wakely <jwakely (a] 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
2892 2015-01-20 Jonathan Wakely <jwakely (a] redhat.com>
2893
2894 PR libstdc++/64658
2895 * include/std/atomic (atomic_init): Define.
2896 * testsuite/29_atomics/atomic/64658.cc: New.
2897
2898 2015-01-19 Tim Shen <timshen (a] 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
2906 2015-01-19 Tim Shen <timshen (a] 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
2921 2015-01-19 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2922 Jonathan Wakely <jwakely (a] 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
2929 2015-01-18 Jonathan Wakely <jwakely (a] 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
2936 2015-01-18 Jonathan Wakely <jwakely (a] redhat.com>
2937
2938 * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
2939 * doc/html/manual/status.html: Regenerate.
2940
2941 2015-01-18 Jonathan Wakely <jwakely (a] 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
2949 2015-01-17 Jonathan Wakely <jwakely (a] 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
2955 2015-01-17 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2956 Jonathan Wakely <jwakely (a] redhat.com>
2957
2958 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
2959 * doc/html/*: Regenerate.
2960
2961 2015-01-17 Jonathan Wakely <jwakely (a] 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
2974 2015-01-17 Jonathan Wakely <jwakely (a] 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
2984 2015-01-17 Jonathan Wakely <jwakely (a] 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
2991 2015-01-17 Jonathan Wakely <jwakely (a] 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
3000 2015-01-16 Jonathan Wakely <jwakely (a] 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
3013 2015-01-16 Jonathan Wakely <jwakely (a] 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
3026 2015-01-16 Torvald Riegel <triegel (a] 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
3038 2015-01-16 Jonathan Wakely <jwakely (a] 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
3058 2015-01-16 Torvald Riegel <triegel (a] redhat.com>
3059
3060 * include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
3061 implementation.
3062
3063 2015-01-13 Jonathan Wakely <jwakely (a] redhat.com>
3064
3065 PR libstdc++/64571
3066 * config/abi/pre/gnu.ver: Export fstream functions using new string.
3067
3068 2015-01-12 Jonathan Wakely <jwakely (a] 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
3077 2015-01-10 Thomas Schwinge <thomas (a] 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
3083 2015-01-09 Jonathan Wakely <jwakely (a] 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
3091 2015-01-09 Andreas Tobler <andreast (a] gcc.gnu.org>
3092
3093 * libsupc++/unwind-cxx.h: Revert previous commit.
3094
3095 2015-01-09 Andreas Tobler <andreast (a] gcc.gnu.org>
3096
3097 * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
3098
3099 2015-01-09 Tim Shen <timshen (a] 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
3108 2015-01-08 Jonathan Wakely <jwakely (a] 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
3135 2015-01-08 Jonathan Wakely <jwakely (a] redhat.com>
3136
3137 * include/bits/hashtable_policy.h: Use __bool_constant.
3138
3139 2015-01-07 Jonathan Wakely <jwakely (a] redhat.com>
3140
3141 * libsupc++/Makefile.am: Compile del_ops.cc as C++14.
3142 * libsupc++/Makefile.in: Regenerate.
3143
3144 2015-01-06 Jonathan Wakely <jwakely (a] redhat.com>
3145
3146 * config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
3147
3148 2015-01-05 Jakub Jelinek <jakub (a] redhat.com>
3149
3150 Update copyright years.
3151
3152 2015-01-04 Jonathan Wakely <jwakely (a] redhat.com>
3153
3154 PR libstdc++/64483
3155 * testsuite/18_support/exception_ptr/64241.cc: Use
3156 dg-require-atomic-builtins.
3157
3158 2015-01-02 Jonathan Wakely <jwakely (a] redhat.com>
3159
3160 * testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
3161 date.
3162
3163 2015-01-02 Tim Shen <timshen (a] 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
3169 2015-01-02 Bernd Edlinger <bernd.edlinger (a] 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
3180 2015-01-02 Jonathan Wakely <jwakely (a] redhat.com>
3181
3182 PR libstdc++/64468
3183 * doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
3184
3185 2015-01-02 Jonathan Wakely <jwakely (a] 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
3210 Copyright (C) 2015 Free Software Foundation, Inc.
3211
3212 Copying and distribution of this file, with or without modification,
3213 are permitted in any medium without royalty provided the copyright
3214 notice and this notice are preserved.
3215