abi.xml: Update link to "Sun Studio 11: C++ Migration Guide".
[gcc.git] / libstdc++-v3 / ChangeLog
1 2017-02-08 Gerald Pfeifer <gerald@pfeifer.com>
2
3 * doc/xml/manual/abi.xml: Update link to "Sun Studio 11: C++
4 Migration Guide".
5
6 2017-02-07 Gerald Pfeifer <gerald@pfeifer.com>
7
8 * doc/html/ext/lwg-active.html: Remove.
9 * doc/html/ext/lwg-closed.html: Ditto.
10 * doc/html/ext/lwg-defects.html: Ditto.
11
12 * doc/Makefile.am (xml_extradir): Remove.
13 (xml_extra): Ditto.
14 (stamp-html-docbook-lwg): Remove recipe...
15 (stamp-html-docbook-data): ...and its use here.
16 * doc/Makefile.in: Regenerate.
17
18 * doc/xml/manual/intro.xml: Shorten two paragraphs explaining
19 the relationship to the upstream working group.
20 Replace a local link to ../ext/lwg-active.html by the upstream one.
21 Replace all reference to ../ext/lwg-defects.html by a new entity
22 &DR; which refers to the upstream address.
23
24 2017-02-07 Gerald Pfeifer <gerald@pfeifer.com>
25
26 * doc/xml/manual/status_cxx2017.xml: Fix link to N4284.
27
28 2017-02-06 Jonathan Wakely <jwakely@redhat.com>
29
30 PR libstdc++/79323
31 * testsuite/20_util/duration/literals/range.cc: Prune extra output
32 at -O0.
33
34 2017-02-06 Gerald Pfeifer <gerald@pfeifer.com>
35
36 * doc/xml/manual/documentation_hacking.xml: Update URL of the
37 DocBook Element Reference. Use that term as link description
38 instead of "online".
39 epubcheck has moved to GitHub.
40 Remove obsolete link to DocBook Publishing Tools.
41
42 2017-02-03 Jonathan Wakely <jwakely@redhat.com>
43
44 PR libstdc++/66145
45 * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Restore ABI override
46 so new ios::failure can be caught even when old ABI is the default.
47 * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
48 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
49 exceptions_failbit.cc: Likewise.
50 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
51 exceptions_failbit.cc: Likewise.
52 * testsuite/27_io/basic_istream/extractors_other/char/
53 exceptions_null.cc: Likewise.
54 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
55 exceptions_null.cc: Likewise.
56 * testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
57 * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
58 * testsuite/27_io/basic_ostream/inserters_other/char/
59 exceptions_null.cc: Likewise.
60 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
61 exceptions_null.cc: Likewise.
62 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
63
64 PR libstdc++/60936
65 * src/c++11/Makefile.am: Add new files.
66 * src/c++11/Makefile.in: Regenerate.
67 * src/c++11/cow-string-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
68 (operator<<, operator>>, getline): Move explicit instantiations to ...
69 * src/c++11/cow-string-io-inst.cc: ... new file.
70 * src/c++11/cow-wstring-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
71 (operator<<, operator>>, getline): Move explicit instantiations to ...
72 * src/c++11/cow-wstring-io-inst.cc: ... new file.
73 * src/c++11/functexcept.cc (__throw_ios_failure, __throw_system_error)
74 (__throw_future_error, __throw_bad_function_call):
75 (__throw_regex_error): Move functions for C++11 exceptions to the
76 files that define the exception types.
77 * src/c++11/functional.cc (__throw_bad_function_call): Move here.
78 * src/c++11/future.cc (__throw_future_error): Likewise.
79 * src/c++11/ios.cc (__throw_ios_failure): Likewise.
80 * src/c++11/regex.cc (__throw_regex_error): Likewise.
81 * src/c++11/snprintf_lite.cc (__concat_size_t): Print decimal
82 representation directly instead of calling __int_to_char.
83 * src/c++11/sso_string.cc (__sso_string): New file for definition
84 of __sso_string type.
85 * src/c++11/string-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
86 explicit instantiations of narrow string I/O functions.
87 * src/c++11/system_error.cc (__throw_system_error): Move here.
88 (__sso_string): Move to new file.
89 * src/c++11/wstring-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
90 explicit instantiations of wide string I/O functions.
91 * src/c++98/misc-inst.cc [_GLIBCXX_USE_CXX11_ABI] (operator<<)
92 (operator>>, getline): Remove explicit instantiations from here.
93
94 2017-02-02 H.J. Lu <hongjiu.lu@intel.com>
95
96 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
97
98 2017-02-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
99
100 * configure.host: Separate Solaris/SPARC and x86 baselines.
101 * config/abi/post/solaris2.10/baseline_symbols.txt: Move ...
102 * config/abi/post/sparc-solaris2.10/baseline_symbols.txt: ... here.
103 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Move ...
104 * config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
105 ... here.
106 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Move ...
107 * config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: ... here.
108 * config/abi/post/i386-solaris2.10/baseline_symbols.txt: New file.
109 * config/abi/post/solaris2.11/baseline_symbols.txt: Move ...
110 * config/abi/post/sparc-solaris2.11/baseline_symbols.txt: ... here.
111 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Move ...
112 * config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
113 ... here.
114 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Move ...
115 * config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: ... here.
116 * config/abi/post/i386-solaris2.11/baseline_symbols.txt: New file.
117
118 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
119 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
120 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
121 * config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
122 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
123 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
124
125 2017-02-01 Jonathan Wakely <jwakely@redhat.com>
126
127 PR libstdc++/78346
128 * include/bits/predefined_ops.h (_Iter_equals_iter): Store iterator
129 not its referent.
130 (_Iter_comp_to_iter): Likewise.
131 * testsuite/25_algorithms/search/78346.cc: New test.
132
133 PR libstdc++/79254
134 * config/abi/pre/gnu.ver: Remove recently added symbols.
135 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
136 (basic_string::_M_copy_assign): Remove.
137 (basic_string::operator=(const basic_string&)): Don't dispatch to
138 _M_copy_assign. If source object is small just deallocate, otherwise
139 perform new allocation before making any changes.
140 * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
141 (basic_string::_M_copy_assign(const basic_string&, true_type)):
142 Remove.
143 * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
144 Test cases where the allocators are equal or the string is small.
145 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
146 Likewise.
147
148 2017-01-30 Ville Voutilainen <ville.voutilainen@gmail.com>
149
150 Implement LWG 2825, LWG 2756 breaks class template argument
151 deduction for optional.
152 * include/std/optional: Add a deduction guide.
153 * testsuite/20_util/optional/cons/deduction_guide.cc: New.
154
155 2017-01-27 Jonathan Wakely <jwakely@redhat.com>
156
157 PR libstdc++/79254
158 * config/abi/pre/gnu.ver: Add new symbols.
159 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
160 (basic_string::_M_copy_assign): New overloaded functions to perform
161 copy assignment.
162 (basic_string::operator=(const basic_string&)): Dispatch to
163 _M_copy_assign.
164 * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
165 (basic_string::_M_copy_assign(const basic_string&, true_type)):
166 Define, performing rollback on exception.
167 * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
168 Test exception-safety guarantee.
169 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
170 Likewise.
171 * testsuite/util/testsuite_allocator.h (uneq_allocator::swap): Make
172 std::swap visible.
173
174 2017-01-26 Jonathan Wakely <jwakely@redhat.com>
175
176 PR libstdc++/70607
177 * include/tr1/complex (conj): Remove using-declaration and restore
178 overloads, reverting previous change.
179
180 * testsuite/23_containers/list/operations/78389.cc: Fix for C++11
181 mode.
182 * testsuite/23_containers/priority_queue/requirements/constructible.cc:
183 Mark as unsupported in C++98 mode.
184 * testsuite/23_containers/queue/requirements/constructible.cc:
185 Likewise.
186 * testsuite/23_containers/stack/requirements/constructible.cc:
187 Likewise.
188 * testsuite/25_algorithms/make_heap/movable.cc: Fix for C++11 mode.
189
190 PR libstdc++/79243
191 * include/bits/c++config (literals::string_view_literals::__7): Add.
192 Only declare versioned namespaces for the relevant C++ dialects.
193 * include/experimental/bits/erase_if.h (fundamentals_v2::__detail):
194 Add versioning macros.
195 * include/experimental/bits/lfts_config.h:
196 (fundamentals_v1::__detail::__7, fundamentals_v2::__detail::__7): Add.
197 * include/experimental/string_view (fundamentals_v2::__detail):
198 Add versioning macros.
199 (fundamentals_v2::__detail::__identity): Remove.
200 (fundamentals_v2::__detail::__idt): Use common_type instead of
201 __detail::__identity.
202 * include/std/string_view (__detail::__identity, __detail::__idt):
203 Likewise.
204 (literals::string_view_literals): Fix nesting of versioning macros.
205
206 PR libstdc++/79190
207 * libsupc++/del_opa.cc (operator delete(void*, std::align_val_t))
208 [!_GLIBCXX_HAVE_ALIGNED_ALLOC && !_GLIBCXX_HAVE_POSIX_MEMALIGN
209 && !_GLIBCXX_HAVE_MEMALIGN && !_GLIBCXX_HAVE__ALIGNED_MALLOC]:
210 Retrieve original pointer value allocated by malloc.
211 * libsupc++/new_opa.cc [!_GLIBCXX_HAVE_ALIGNED_ALLOC
212 && !_GLIBCXX_HAVE_POSIX_MEMALIGN && !_GLIBCXX_HAVE_MEMALIGN
213 && !_GLIBCXX_HAVE__ALIGNED_MALLOC] (aligned_alloc(size_t, size_t)):
214 Define, adjusting pointer value allocated by malloc and storing for
215 retrieval by operator delete.
216
217 2017-01-26 Jakub Jelinek <jakub@redhat.com>
218
219 * libsupc++/eh_atomics.h: Update copyright years.
220 * testsuite/20_util/unique_ptr/cons/default.cc: Update copyright years.
221
222 2017-01-25 Jonathan Wakely <jwakely@redhat.com>
223
224 PR libstdc++/61791
225 PR libstdc++/70607
226 * include/std/complex (real(T), imag(T)): Add _GLIBCXX_CONSTEXPR.
227 (proj(T), conj(T)): Change return types per DR 1522.
228 * include/tr1/complex (conj): Remove overloads and use std::conj.
229 * testsuite/26_numerics/complex/dr781_dr1137.cc: Rename to...
230 * testsuite/26_numerics/complex/dr781.cc: ... this, and update.
231 * testsuite/26_numerics/complex/value_operations/constexpr2.cc: Test
232 real(T) and imag(T). Allow testing for C++11 too.
233
234 2017-01-24 Jonathan Wakely <jwakely@redhat.com>
235
236 PR libstdc++/79206
237 * include/experimental/string_view (operator==): Check sizes first.
238 * include/std/string_view (operator==): Likewise.
239
240 2017-01-23 Jonathan Wakely <jwakely@redhat.com>
241
242 * testsuite/experimental/array/make_array.cc: Restore <functional>
243 inclusion.
244
245 2017-01-23 Thomas Preud'homme <thomas.preudhomme@arm.com>
246
247 * testsuite/29_atomics/atomic/69301.cc: Require atomic builtins.
248
249 2017-01-23 Jonathan Wakely <jwakely@redhat.com>
250
251 PR libstdc++/79195
252 * include/experimental/array (__make_array_elem): New class template
253 and partial specialization.
254 (__is_reference_wrapper): Move into __make_array_elem specialization.
255 (make_array): Use __make_array_elem to determine element type and move
256 static assertion into specialization. Qualify std::forward call.
257 (to_array): Add exception specifiation.
258 * testsuite/experimental/array/make_array.cc: Test argument types
259 without a common type.
260 * testsuite/experimental/array/neg.cc: Adjust expected error message.
261
262 2017-01-22 Gerald Pfeifer <gerald@pfeifer.com>
263
264 * doc/xml/manual/debug.xml: code.google.com uses https now.
265
266 2017-01-22 Gerald Pfeifer <gerald@pfeifer.com>
267
268 * doc/xml/manual/test.xml: Fix link into gccint online manual.
269
270 2017-01-21 Ville Voutilainen <ville.voutilainen@gmail.com>
271
272 Make poisoned hashes SFINAE away the call operator of the hash.
273 * include/bits/functional_hash.h
274 (__poison_hash::__enable_hash_call): New.
275 * include/std/optional (__optional_hash_call_base): New.
276 (hash<optional<_Tp>>): Derive from the new base,
277 move the hash function into that base.
278 * include/std/variant (__variant_hash_call_base_impl): New.
279 (__variant_hash_call_base): Likewise.
280 (hash<variant<_Types...>>): Derive from the new base,
281 move the hash function into that base.
282 * testsuite/20_util/optional/hash.cc: Add tests for is_callable.
283 * testsuite/20_util/variant/hash.cc: Likewise.
284
285 2017-01-20 Joe Seymour <joe.s@somniumtech.com>
286
287 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): Support uint20_t.
288 * configure: Regenerate.
289
290 2017-01-20 Jonathan Wakely <jwakely@redhat.com>
291
292 PR libstdc++/69240
293 * include/bits/random.h (uniform_real_distribution::param_type)
294 (normal_distribution::param_type, lognormal_distribution::param_type)
295 (gamma_distribution::param_type, chi_squared_distribution::param_type)
296 (cauchy_distribution::param_type, fisher_f_distribution::param_type)
297 (student_t_distribution::param_type)
298 (bernoulli_distribution::param_type, binomial_distribution::param_type)
299 (geometric_distribution::param_type)
300 (negative_binomial_distribution::param_type)
301 (poisson_distribution::param_type)
302 (exponential_distribution::param_type)
303 (weibull_distribution::param_type)
304 (extreme_value_distribution::param_type)
305 (discrete_distribution::param_type)
306 (piecewise_constant_distribution::param_type)
307 (piecewise_linear_distribution::param_type): Define operator!=.
308 * include/bits/uniform_int_dist.h
309 (uniform_int_distribution::param_type): Likewise.
310 * include/ext/random (beta_distribution::param_type)
311 (rice_distribution::param_type, nakagami_distribution::param_type)
312 (pareto_distribution::param_type, k_distribution::param_type)
313 (arcsine_distribution::param_type, hoyt_distribution::param_type)
314 (triangular_distribution::param_type)
315 (von_mises_distribution::param_type)
316 (hypergeometric_distribution::param_type)
317 (logistic_distribution::param_type)
318 (uniform_on_sphere_distribution::param_type)
319 (uniform_inside_sphere_distribution::param_type): Likewise.
320 * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
321 Test construction with param_type.
322 * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
323 Likewise.
324 * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
325 Likewise.
326 * testsuite/26_numerics/random/chi_squared_distribution/cons/parms.cc:
327 Likewise.
328 * testsuite/26_numerics/random/exponential_distribution/cons/parms.cc:
329 Likewise.
330 * testsuite/26_numerics/random/extreme_value_distribution/cons/
331 parms.cc: Likewise.
332 * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
333 Likewise.
334 * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
335 Likewise.
336 * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
337 Likewise.
338 * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
339 Likewise.
340 * testsuite/26_numerics/random/negative_binomial_distribution/cons/
341 parms.cc: Likewise.
342 * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
343 Likewise.
344 * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
345 Likewise.
346 * testsuite/26_numerics/random/student_t_distribution/cons/parms.cc:
347 Likewise.
348 * testsuite/26_numerics/random/uniform_int_distribution/cons/parms.cc:
349 Likewise.
350 * testsuite/26_numerics/random/uniform_real_distribution/cons/parms.cc:
351 Likewise.
352 * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
353 Likewise.
354 * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
355 * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
356 * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
357 * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
358 Likewise.
359 * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
360 * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
361 * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
362 * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
363 * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
364 * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
365 * testsuite/ext/random/triangular_distribution/cons/parms.cc:
366 Likewise.
367 * testsuite/ext/random/uniform_inside_sphere_distribution/cons/
368 parms.cc: Likewise.
369 * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
370
371 PR libstdc++/72792
372 * include/bits/alloc_traits.h (__allocator_traits_base::__diff_type)
373 (__allocator_traits_base::__size_type): Remove.
374 (allocator_traits::_Ptr): New class template to detect const and void
375 pointer types without instantiating pointer_traits::rebind
376 unnecessarily.
377 (allocator_traits::_Diff): Likewise for detecting difference_type.
378 (allocator_traits::_Size): New class template to detect size_type
379 without instantiating make_unsigned unnecessarily.
380 * include/bits/ptr_traits.h (pointer_traits::element_type): Use
381 __detected_or_t instead of __detected_or_t_.
382 * include/std/type_traits (__detected_or_t_): Remove.
383 * testsuite/20_util/allocator_traits/members/pointers.cc: New test.
384
385 PR libstdc++/72792
386 PR libstdc++/72793
387 * include/bits/alloc_traits.h (__allocator_traits_base::__rebind):
388 Replace with class template using void_t.
389 (__alloc_rebind): Define in terms of
390 __allocator_traits_base::__rebind.
391 (allocator_traits): Remove unconditional static_assert for
392 rebind_alloc.
393 * include/bits/ptr_traits.h (__replace_first_arg): Remove type member.
394 (pointer_traits::__rebind): Replace with class template using void_t.
395 (pointer_traits::rebind): Define in terms of __rebind.
396 (pointer_traits): Remove unconditional static_assert for rebind.
397 * testsuite/20_util/allocator_traits/members/rebind_alloc.cc: New test.
398 * testsuite/20_util/pointer_traits/rebind.cc: New test.
399
400 PR libstdc++/69321
401 * include/experimental/any (__any_caster): Avoid instantiating
402 manager function for types that can't be stored in any.
403 * include/std/any (__any_caster): Likewise.
404 * testsuite/20_util/any/misc/any_cast.cc: Test non-copyable type.
405 * testsuite/experimental/any/misc/any_cast.cc: Likewise.
406
407 PR libstdc++/64903
408 * include/bits/stl_algo.h (is_partitioned): Use increment instead of
409 std::advance.
410
411 2017-01-19 Jonathan Wakely <jwakely@redhat.com>
412
413 PR libstdc++/79156
414 * include/bits/shared_ptr_base.h (__enable_shared_from_this_base):
415 Fix return type.
416 (__enable_shared_from_this): Declare __shared_ptr as a friend.
417 * testsuite/ext/shared_ptr/1.cc: New test.
418
419 PR libstdc++/64903
420 * include/bits/stl_algo.h (is_partitioned): Don't retest the partition
421 point.
422 * testsuite/25_algorithms/is_partitioned/2.cc: New test.
423
424 * doc/xml/manual/abi.xml: Fix typo.
425 * doc/html/manual/abi.html: Likewise.
426
427 PR libstdc++/67085
428 * include/bits/predefined_ops.h (_Iter_less_val, _Val_less_iter): Add
429 converting constructors from _Iter_less_iter.
430 (_Iter_comp_val, _Val_comp_iter): Add converting constructors from
431 _Iter_comp_iter.
432 (__iter_comp_val(_Iter_comp_iter<C>): Use converting constructor.
433 (__val_comp_iter(_Iter_comp_iter<C>): Likewise.
434 * include/bits/stl_heap.h (__is_heap_until, __push_heap, __pop_heap)
435 (__make_heap, __sort_heap): Change _Compare parameters to references.
436 (__is_heap, push_heap, __adjust_heap, __pop_heap, pop_heap)
437 (__make_heap, make_heap, sort_heap, is_heap_until): Pass comparison
438 functions as lvalues.
439 (is_heap): Call __is_heap_until directly to avoid copying __comp.
440 * testsuite/23_containers/priority_queue/67085.cc: Adjust test to
441 count copies during construction with empty sequence.
442
443 PR libstdc++/67085
444 * include/bits/stl_heap.h (__is_heap): Use _GLIBCXX_MOVE.
445 (__make_heap, __sort_heap): Don't use _GLIBCXX_MOVE inside loops.
446 * testsuite/23_containers/priority_queue/67085.cc: Adjust expected
447 number of copies.
448 * testsuite/25_algorithms/make_heap/movable.cc: New test.
449
450 PR libstdc++/67085
451 * include/bits/stl_heap.h (push_heap, __adjust_heap, __pop_heap)
452 (pop_heap, __make_heap, make_heap, __sort_heap, sort_heap): Use
453 _GLIBCXX_MOVE when passing comparison function to other functions.
454 (is_heap_until, is_heap): Use std::move when passing comparison
455 function.
456 * testsuite/23_containers/priority_queue/67085.cc: New test.
457
458 PR libstdc++/78905
459 * doc/xml/manual/abi.xml (abi.versioning.history): Add markup to
460 macro names, filenames, and literal values. Document _GLIBCXX_RELEASE.
461 Document that the deprecated _GLIBCXX_VERSION macro was removed for
462 the 4.0.0 release.
463 * doc/html/*: Regenerate.
464 * include/Makefile.am (_GLIBCXX_RELEASE): Set value.
465 * include/Makefile.in: Regenerate.
466 * include/bits/c++config (_GLIBCXX_RELEASE): Add #define.
467 * testsuite/ext/profile/mutex_extensions_neg.cc: Use lineno of 0 in
468 dg-error.
469
470 2017-01-18 Jonathan Wakely <jwakely@redhat.com>
471
472 PR libstdc++/69301
473 * include/std/atomic (atomic<T>::load, atomic<T>::exchange): Use
474 aligned buffer instead of default-initialized variable.
475 * testsuite/29_atomics/atomic/69301.cc: New test.
476 * include/experimental/memory (observer_ptr::release): Use reserved
477 name.
478 * include/ext/pointer.h (_Pointer_adapter::operator++(int))
479 (_Pointer_adapter::operator--(int)): Likewise.
480
481 PR libstdc++/68925
482 * include/experimental/random (randint): Use temporary instead of
483 thread_local static.
484
485 2017-01-17 Joshua Conner <joshconner@google.com>
486
487 * crossconfig.m4: Add fuchsia OS.
488 * configure: Regenerate.
489
490 2017-01-17 Jonathan Wakely <jwakely@redhat.com>
491
492 PR libstdc++/69699
493 * doc/xml/manual/abi.xml (abi.versioning.history): Explain why the
494 __GLIBCXX__ macro is not useful. Remove redundant date information
495 and link to the GCC release timeline.
496 (abi.versioning.active): Move partial sentence into the previous
497 paragraph.
498 * doc/html/*: Regenerate.
499
500 PR libstdc++/79114
501 * libsupc++/nested_exception.h (throw_with_nested): Use decay instead
502 of remove_reference.
503 * testsuite/18_support/nested_exception/79114.cc: New test.
504
505 2017-01-17 Jakub Jelinek <jakub@redhat.com>
506
507 PR other/79046
508 * configure.ac: Add GCC_BASE_VER.
509 * fragment.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
510 get version from BASE-VER file.
511 * po/Makefile.in: Regenerated.
512 * libsupc++/Makefile.in: Regenerated.
513 * testsuite/Makefile.in: Regenerated.
514 * src/Makefile.in: Regenerated.
515 * configure: Regenerated.
516 * Makefile.in: Regenerated.
517 * include/Makefile.in: Regenerated.
518 * doc/Makefile.in: Regenerated.
519 * python/Makefile.in: Regenerated.
520 * src/c++11/Makefile.in: Regenerated.
521 * src/c++98/Makefile.in: Regenerated.
522 * src/filesystem/Makefile.in: Regenerated.
523
524 2017-01-16 Jonathan Wakely <jwakely@redhat.com>
525
526 PR libstdc++/66145
527 * src/c++11/functexcept.cc: Use new ABI for std::ios_base::failure
528 exceptions.
529 * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Don't override ABI
530 for test, so new ios::failure can be caught.
531 * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
532 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
533 exceptions_failbit.cc: Likewise.
534 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
535 exceptions_failbit.cc: Likewise.
536 * testsuite/27_io/basic_istream/extractors_other/char/
537 exceptions_null.cc: Likewise.
538 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
539 exceptions_null.cc: Likewise.
540 * testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
541 * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
542 * testsuite/27_io/basic_ostream/inserters_other/char/
543 exceptions_null.cc: Likewise.
544 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
545 exceptions_null.cc: Likewise.
546 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
547
548 PR libstdc++/78702
549 * include/bits/locale_classes.h (locale::facet::__shim): Change from
550 private to protected.
551 * src/c++11/cxx11-shim_facets.cc (__shim_accessor): Define helper to
552 make locale::facet::__shim accessible.
553
554 2017-01-16 Ville Voutilainen <ville.voutilainen@gmail.com>
555
556 PR libstdc++/78389
557 * include/bits/list.tcc (merge(list&&)): Fix backwards size adjustments.
558 (merge(list&&, _StrictWeakOrdering)): Likewise.
559 * testsuite/23_containers/list/operations/78389.cc: Add
560 better test for the sizes.
561
562 2017-01-14 Jonathan Wakely <jwakely@redhat.com>
563
564 * testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
565 Skip test when -D_GLIBCXX_PROFILE mode is included in options.
566 * testsuite/23_containers/map/modifiers/extract.cc: Likewise.
567 * testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
568 Likewise.
569 * testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
570 * testsuite/23_containers/multimap/modifiers/extract.cc: Likewise.
571 * testsuite/23_containers/multiset/modifiers/extract.cc: Likewise.
572 * testsuite/23_containers/set/modifiers/extract.cc: Likewise.
573 * testsuite/23_containers/unordered_map/modifiers/extract.cc:
574 Likewise.
575 * testsuite/23_containers/unordered_multimap/modifiers/extract.cc::
576 Likewise.
577 * testsuite/23_containers/unordered_multiset/modifiers/extract.cc::
578 Likewise.
579 * testsuite/23_containers/unordered_set/modifiers/extract.cc:
580 Likewise.
581 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
582 Likewise.
583 * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
584 * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
585 * testsuite/25_algorithms/lexicographical_compare/71545.cc: Likewise.
586 * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
587 * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
588 * testsuite/libstdc++-prettyprinters/cxx11.cc: Likewise.
589 * testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
590 * testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
591 * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
592 * testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
593 * testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
594 * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
595 * testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.
596
597 2017-01-13 Jonathan Wakely <jwakely@redhat.com>
598
599 PR libstdc++/65411
600 * config/io/basic_file_stdio.cc (__basic_file<char>::close()): Don't
601 retry fclose on EINTR.
602
603 * include/profile/base.h: Remove unused header that leads to header
604 cycle in C++17 mode.
605
606 PR libstdc++/79075
607 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (basic_string):
608 Make _If_sv private.
609 [!_GLIBCXX_USE_CXX11_ABI] (basic_string): Add member functions taking
610 basic_string_view arguments.
611
612 PR libstdc++/79075
613 * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Remove
614 redundant option from cxxflags.
615 (check_effective_target_cxx11-abi): Define.
616 * testsuite/21_strings/basic_string/allocator/71964.cc: Use cxx11-abi
617 effective target.
618 * testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
619 * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
620 Likewise.
621 * testsuite/21_strings/basic_string/allocator/char/minimal.cc:
622 Likewise.
623 * testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
624 * testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
625 Likewise.
626 * testsuite/21_strings/basic_string/allocator/char/noexcept.cc:
627 Likewise.
628 * testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
629 * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
630 Likewise.
631 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
632 Likewise.
633 * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
634 Likewise.
635 * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
636 Likewise.
637 * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
638 Likewise.
639 * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
640 Likewise.
641 * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
642 Likewise.
643 * testsuite/23_containers/list/61347.cc: Likewise.
644 * testsuite/27_io/basic_fstream/cons/base.cc: Likewise.
645 * testsuite/27_io/ios_base/failure/cxx11.cc: Likewise.
646
647 2017-01-13 Ville Voutilainen <ville.voutilainen@gmail.com>
648
649 PR libstdc++/78389
650 * include/bits/list.tcc (merge(list&&)):
651 Adjust list sizes if the comparator throws.
652 (merge(list&&, _StrictWeakOrdering)): Likewise.
653 (sort()): Splice elements back from the scratch buffers
654 if the comparator throws.
655 (sort(_StrictWeakOrdering)): Likewise.
656 * testsuite/23_containers/list/operations/78389.cc: New.
657
658 2017-01-13 Jonathan Wakely <jwakely@redhat.com>
659
660 * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Mark
661 XFAIL for C++17 until node reinsertion supports fancy pointers.
662
663 PR libstdc++/78361
664 * testsuite/20_util/add_pointer/value.cc: Test forming function
665 pointers.
666
667 2017-01-13 Michael Brune <lucdanton@free.fr>
668
669 PR libstdc++/78361
670 * include/std/type_traits (__is_referenceable): Handle noexcept
671 function types.
672
673 2017-01-12 Jonathan Wakely <jwakely@redhat.com>
674
675 PR libstdc++/77528
676 * include/bits/stl_queue.h (queue, priority_queue): Remove default
677 member-initializers and define default constructors as templates with
678 constraints.
679 * include/bits/stl_stack.h (stack): Likewise.
680 * testsuite/23_containers/priority_queue/requirements/constructible.cc:
681 New.
682 * testsuite/23_containers/priority_queue/requirements/
683 explicit_instantiation/1.cc: Test more instantiations.
684 * testsuite/23_containers/priority_queue/requirements/
685 explicit_instantiation/1_c++98.cc: Likewise.
686 * testsuite/23_containers/queue/requirements/constructible.cc: New.
687 * testsuite/23_containers/stack/requirements/constructible.cc: New.
688
689 PR libstdc++/66284
690 * doc/xml/manual/intro.xml: Document LWG 2781 change.
691 * doc/html/*: Regenerate.
692 * include/std/functional (_Function_base::_Ref_manager): Remove.
693 (_Function_handler): Remove partial specializations for
694 reference_wrapper.
695 (function::target): Remove special case for const qualification.
696 * testsuite/20_util/function/6.cc: Adjust tests for target type.
697 * testsuite/20_util/function/7.cc: Likewise.
698 * testsuite/20_util/function/8.cc: Likewise.
699
700 2017-01-11 Jonathan Wakely <jwakely@redhat.com>
701
702 PR libstdc++/78134
703 * include/bits/stl_map.h (map::lower_bound, map::upper_bound)
704 (map::equal_range): Fix return type of heterogeneous overloads.
705 * include/bits/stl_multimap.h (multimap::lower_bound)
706 (multimap::upper_bound, multimap::equal_range): Likewise.
707 * include/bits/stl_multiset.h (multiset::lower_bound)
708 (multiset::upper_bound, multiset::equal_range): Likewise.
709 * include/bits/stl_set.h (set::lower_bound, set::upper_bound)
710 (set::equal_range): Likewise.
711 * testsuite/23_containers/map/operations/2.cc
712 * testsuite/23_containers/multimap/operations/2.cc
713 * testsuite/23_containers/multiset/operations/2.cc
714 * testsuite/23_containers/set/operations/2.cc
715
716 PR libstdc++/78273
717 * include/bits/stl_map.h (map::count<_Kt>(const _Kt&)): Don't assume
718 the heterogeneous comparison can only find one match.
719 * include/bits/stl_set.h (set::count<_Kt>(const _Kt&)): Likewise.
720 * testsuite/23_containers/map/operations/2.cc: Test count works with
721 comparison function that just partitions rather than sorting.
722 * testsuite/23_containers/set/operations/2.cc: Likewise.
723
724 2017-01-11 Ville Voutilainen <ville.voutilainen@gmail.com>
725
726 Reduce the size of variant, it doesn't need an index of
727 type size_t internally.
728 * include/std/variant (parse_numbers.h): New include.
729 (__select_index): New.
730 (_Variant_storage<false, _Types...>::_M_reset_impl): Use
731 _index_type for comparison with variant_npos.
732 (_Variant_storage<false, _Types...>::__index_type): New.
733 (_Variant_storage<false, _Types...>::_M_index): Change the
734 type from size_t to __index_type.
735 (_Variant_storage<true, _Types...>::__index_type): New.
736 (_Variant_storage<true, _Types...>::_M_index): Change the
737 type from size_t to __index_type.
738 (_Variant_base::_M_valid): Use _Storage::__index_type
739 for comparison with variant_npos.
740 (variant::index): Use _Base::_Storage::__index_type
741 for comparison with variant_npos.
742 * testsuite/20_util/variant/index_type.cc: New.
743
744 2017-01-10 Jonathan Wakely <jwakely@redhat.com>
745
746 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Adjust
747 effective target selector to prevent running in C++17 mode.
748
749 PR libstdc++/77528
750 * include/bits/stl_queue.h (queue::c): Add default member initializer.
751 (queue::queue()): Add constructor and define as defaulted.
752 (queue::queue(_Sequence&&)): Remove default argument.
753 (priority_queue::c, priority_queue::comp): Add default member
754 initializers.
755 (priority_queue::priority_queue()): Add constructor and define as
756 defaulted.
757 (priority_queue::priority_queue(const _Compare&, _Sequence&&)):
758 Remove default argument for first parameter.
759 * include/bits/stl_stack.h (stack::c): Add default member initializer.
760 (stack::stack()): Add constructor and define as defaulted.
761 (stack::stack(const _Sequence&)): Remove default argument.
762 * testsuite/23_containers/priority_queue/requirements/
763 explicit_instantiation/1.cc: Test explicit instantiation with
764 non-DefaultConstructible sequence.
765 * testsuite/23_containers/priority_queue/77528.cc: New test.
766 * testsuite/23_containers/priority_queue/requirements/
767 explicit_instantiation/1_c++0x.cc: Replace with 1_c++98.cc.
768 * testsuite/23_containers/queue/77528.cc: New test.
769 * testsuite/23_containers/queue/requirements/explicit_instantiation/
770 1.cc: Test explicit instantiation with non-DefaultConstructible
771 sequence.
772 * testsuite/23_containers/queue/requirements/explicit_instantiation/
773 1_c++0x.cc: Replace with 1_c++98.cc.
774 * testsuite/23_containers/stack/77528.cc: New test.
775 * testsuite/23_containers/stack/requirements/explicit_instantiation/
776 1.cc: Test explicit instantiation with non-DefaultConstructible
777 sequence.
778 * testsuite/23_containers/stack/requirements/explicit_instantiation/
779 1_c++0x.cc: Replace with 1_c++98.cc.
780
781 2017-01-10 Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
782
783 * include/bits/locale_facets_nonio.tcc
784 (time_get::_M_extract_via_format): Avoid compilation errors with
785 non-standard struct tm.
786
787 2017-01-10 François Dumont <fdumont@gcc.gnu.org>
788 Jonathan Wakely <jwakely@redhat.com>
789
790 * python/libstdcxx/v6/printers.py (_versioned_namespace): Define.
791 (is_specialization, strip_versioned_namespace): New helpers functions
792 to work with symbols in the versioned namespace.
793 (Printer.add_version): Add second name using versioned namespace.
794 (add_one_template_type_printer, add_one_type_printer): Add second
795 type printers using versioned namespace.
796 (register_type_printers): Add template type printer for basic_string.
797 (build_libstdcxx_dictionary): Remove dead code.
798 * python/libstdcxx/v6/xmethods.py: Make all matchers look for
799 versioned namespace.
800 * testsuite/libstdc++-prettyprinters/48362.cc: Adjust expected
801 results.
802 * testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.
803
804 2017-01-09 Jonathan Wakely <jwakely@redhat.com>
805
806 PR libstdc++/79017
807 * acinclude.m4 (GLIBCXX_CHECK_C99_TR1): Check for llrint and llround
808 functions separately on darwin and if they're missing define
809 _GLIBCXX_NO_C99_ROUNDING_FUNCS.
810 * config.h.in: Regenerate.
811 * configure: Regenerate.
812 * include/c_global/cmath [_GLIBCXX_NO_C99_ROUNDING_FUNCS] (llrint)
813 (llrintf, llrintl, llround, llroundf, llroundl): Do not define.
814
815 * testsuite/30_threads/condition_variable/members/3.cc: Use new macro
816 to detect correct thread_local destructors.
817 * testsuite/util/testsuite_hooks.h (CORRECT_THREAD_LOCAL_DTORS):
818 Define.
819
820 2017-01-09 Jonathan Wakely <jwakely@redhat.com>
821 Aditya Kumar <hiraditya@msn.com>
822
823 PR libstdc++/66414
824 * include/bits/basic_string.tcc
825 (basic_string::find(const CharT*, size_type, size_type)): Optimize.
826
827 2017-01-06 Jonathan Wakely <jwakely@redhat.com>
828
829 * testsuite/21_strings/basic_string/operations/find/char/6.cc: New.
830 * testsuite/21_strings/basic_string/operations/find/wchar_t/6.cc: New.
831
832 * testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp:
833 Include <cassert> header.
834
835 PR libstdc++/78968
836 * crossconfig.m4: Check for __cxa_thread_atexit on *-*-freebsd*.
837 * configure: Regenerate.
838
839 2017-01-06 Barrett Adair <barrettellisadair@gmail.com>
840 Jonathan Wakely <jwakely@redhat.com>
841
842 * include/std/variant (variant, swap): Replace __and_ usage with fold
843 expressions.
844
845 2017-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
846
847 PR go/78978
848 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Remove.
849 * configure.ac: Call GCC_CHECK_ASSEMBLER_HWCAP instead of
850 GLIBCXX_CHECK_ASSEMBLER_HWCAP.
851 * fragment.am (CONFIG_CXXFLAGS): Use HWCAP_CFLAGS instead of
852 HWCAP_FLAGS.
853 * aclocal.m4: Regenerate.
854 * configure: Regenerate.
855 * Makefile.in, doc/Makefile.in, include/Makefile.in,
856 libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
857 src/Makefile.in, src/c++11/Makefile.in, src/c++98/Makefile.in,
858 src/filesystem/Makefile.in, testsuite/Makefile.in: Regenerate.
859
860 2017-01-06 Jonathan Wakely <jwakely@redhat.com>
861
862 * include/bits/c++config (_GLIBCXX_ASSERTIONS): Avoid redefinition.
863
864 PR libstdc++/78991
865 * include/bits/predefined_ops.h (_Iter_comp_iter, _Iter_comp_val)
866 (_Val_comp_iter, _Iter_equals_val, _Iter_pred, _Iter_comp_to_val)
867 (_Iter_comp_to_iter, _Iter_negate): Make constructors explicit and
868 move function objects.
869 (__iter_comp_iter, __iter_comp_val, __val_comp_iter, __pred_iter)
870 (__iter_comp_val, __iter_comp_iter, __negate): Move function objects.
871 * testsuite/25_algorithms/sort/78991.cc: New test.
872
873 2017-01-05 Jonathan Wakely <jwakely@redhat.com>
874
875 * include/bits/std_function.h (function::_Signature_type): Remove.
876 (function::function(_Functor)): Adjust.
877
878 2017-01-05 Tim Shen <timshen@google.com>
879
880 PR libstdc++/78996
881 * include/std/variant (__gen_vtable_impl): rename __unused to
882 __dimensions to avoid naming conflict.
883
884 2017-01-04 Jonathan Wakely <jwakely@redhat.com>
885
886 PR libstdc++/78968
887 * config.h.in: Regenerate.
888 * configure: Likewise.
889 * configure.ac: Check for __cxa_thread_atexit.
890 * libsupc++/atexit_thread.cc [_GLIBCXX_HAVE___CXA_THREAD_ATEXIT]:
891 Don't define __cxa_thread_atexit if libc provides it.
892
893 2017-01-04 Ville Voutilainen <ville.voutilainen@gmail.com>
894
895 Implement 2801, Default-constructibility of unique_ptr.
896 * include/bits/unique_ptr.h (__uniq_ptr_impl::_DeleterConstraint): New.
897 (unique_ptr::_DeleterConstraint): Likewise.
898 (unique_ptr()): Constrain.
899 (unique_ptr(pointer)): Likewise.
900 (unique_ptr(nullptr_t)): Likewise.
901 (unique_ptr<_Tp[], _Dp>::_DeleterConstraint): New.
902 (unique_ptr<_Tp[], _Dp>::unique_ptr()): Constrain.
903 (unique_ptr<_Tp[], _Dp>::unique_ptr(_Up)): Likewise.
904 (unique_ptr<_Tp[], _Dp>::unique_ptr(nullptr_t)): Likewise.
905 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust.
906 * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
907 * testsuite/20_util/unique_ptr/cons/default.cc: New.
908 * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Adjust.
909
910 2017-01-04 Pauli Nieminen <suokkos@gmail.com>
911 Jonathan Wakely <jwakely@redhat.com>
912
913 PR libstdc++/64735
914 * acinclude.m4 (GLIBCXX_CHECK_EXCEPTION_PTR_SYMVER): Define.
915 * config.h.in: Regenerate.
916 * config/abi/pre/gnu.ver [HAVE_EXCEPTION_PTR_SINCE_GCC46]
917 (GLIBCXX_3.4.15, GLIBCXX_3.4.21, CXXABI_1.3.3, CXXABI_1.3.5): Make
918 exports for exception_ptr, nested_exception, and future conditional.
919 [HAVE_EXCEPTION_PTR_SINCE_GCC46] (GLIBCXX_3.4.23, CXXABI_1.3.11): Add
920 exports for exception_ptr, nested_exception, and future conditional.
921 * configure: Regenerate.
922 * configure.ac: Use GLIBCXX_CHECK_EXCEPTION_PTR_SYMVER.
923 * include/std/future: Remove check for ATOMIC_INT_LOCK_FREE
924 * libsupc++/eh_atomics.h: New file for internal use only.
925 (__eh_atomic_inc, __eh_atomic_dec): New.
926 * libsupc++/eh_ptr.cc (exception_ptr::_M_addref)
927 (exception_ptr::_M_release) (__gxx_dependent_exception_cleanup)
928 (rethrow_exception): Use eh_atomics.h reference counting helpers.
929 * libsupc++/eh_throw.cc (__gxx_exception_cleanup): Likewise.
930 * libsupc++/eh_tm.cc (free_any_cxa_exception): Likewise.
931 * libsupc++/exception: Remove check for ATOMIC_INT_LOCK_FREE.
932 * libsupc++/exception_ptr.h: Likewise.
933 * libsupc++/guard.cc: Include header for ATOMIC_INT_LOCK_FREE macro.
934 * libsupc++/nested_exception.cc: Remove check for
935 ATOMIC_INT_LOCK_FREE.
936 * libsupc++/nested_exception.h: Likewise.
937 * src/c++11/future.cc: Likewise.
938 * testsuite/18_support/exception_ptr/*: Remove atomic builtins checks.
939 * testsuite/18_support/nested_exception/*: Likewise.
940 * testsuite/30_threads/async/*: Likewise.
941 * testsuite/30_threads/future/*: Likewise.
942 * testsuite/30_threads/headers/future/types_std_c++0x.cc: Likewise.
943 * testsuite/30_threads/packaged_task/*: Likewise.
944 * testsuite/30_threads/promise/*: Likewise.
945 * testsuite/30_threads/shared_future/*: Likewise.
946
947 2017-01-03 Gerald Pfeifer <gerald@pfeifer.com>
948
949 * doc/xml/manual/documentation_hacking.xml: sourceforge.net now
950 defaults to https; adjust reference.
951
952 2017-01-03 Jonathan Wakely <jwakely@redhat.com>
953
954 PR libstdc++/78956
955 * include/std/thread (thread(const thread&&)): Add deleted
956 constructor.
957 * testsuite/30_threads/thread/cons/lwg2097.cc: New test.
958
959 * doc/xml/manual/spine.xml: Update copyright years.
960 * doc/xml/manual/build_hacking.xml: Fix spelling of libbuilddir.
961 * doc/xml/manual/test.xml: Likewise.
962 * doc/html/*: Regenerate.
963
964 2017-01-01 Gerald Pfeifer <gerald@pfeifer.com>
965
966 * doc/xml/faq.xml: Update address of C++ ABI link.
967 * doc/xml/manual/abi.xml: Ditto.
968
969 2017-01-01 Jakub Jelinek <jakub@redhat.com>
970
971 Update copyright years.
972 \f
973 Copyright (C) 2017 Free Software Foundation, Inc.
974
975 Copying and distribution of this file, with or without modification,
976 are permitted in any medium without royalty provided the copyright
977 notice and this notice are preserved.