2016-06-15 François Dumont <fdumont@gcc.gnu.org>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobc1848aa2a25b41b94d916f752a2cab82f13f6b88
1 2016-06-15  François Dumont  <fdumont@gcc.gnu.org>
3         * include/bits/stl_deque.h
4         (std::deque<>::operator=): Call _M_assign_aux.
5         (std::deque<>::assign(initializer_list<>)): Likewise.
6         (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
7         (std::deque<>::insert(const_iterator, initializer_list<>)):
8         Call _M_range_insert_aux.
9         (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
10         Likewise.
11         (std::deque<>::_M_fill_assign): Call _M_fill_insert.
12         (std::deque<>::_M_move_assign2): Call _M_assign_aux.
13         * include/bits/deque.tcc
14         (std::deque<>::operator=): Call _M_range_insert_aux.
15         (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
16         Likewise.
17         * include/bits/stl_vector.h
18         (std::vector<>::operator=): Call _M_assign_aux.
19         (std::vector<>::assign(initializer_list<>)): Likewise.
20         (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
21         (std::vector<>::insert(const_iterator, initializer_list<>)):
22         Call _M_range_insert.
23         * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
25 2016-06-07  François Dumont  <fdumont@gcc.gnu.org>
27         * include/std/tuple (_Head_base<>): Default specialization condition at
28         type declaration.
30 2016-06-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
32         Support allocators in tuples of zero size.
33         * include/std/tuple (tuple<>::tuple(),
34         tuple<>::tuple(allocator_arg_t, const _Alloc&),
35         tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
36         * testsuite/20_util/tuple/cons/allocators.cc: Adjust.
38 2016-06-06  Jonathan Wakely  <jwakely@redhat.com>
40         PR libstdc++/71320
41         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
42         Add or remove permissions according to perms argument.
43         * testsuite/experimental/filesystem/operations/permissions.cc: New
44         test.
46 2016-06-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
48         Protect allocator-overloads of tuple-from-tuple constructors
49         from cases that would create dangling references.
50         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
51         const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
52         tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
53         * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
55 2016-05-29  Gerald Pfeifer  <gerald@pfeifer.com>
57         * doc/xml/manual/backwards_compatibility.xml: Adjust
58         lists.debian.org link to https.
59         * doc/html/manual/backwards.html: Regenerate.
61 2016-05-27  Jonathan Wakely  <jwakely@redhat.com>
63         * doc/xml/manual/abi.xml: Adjust URL to use https.
64         * doc/html/manual/*: Regenerate.
66 2016-05-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
68         PR libstdc++/66338
69         * include/std/tuple (_TMC): Add a check for _NotSameTuple.
70         * include/std/tuple (tuple(_UElements&&...)): Remove the separate
71         check for _NotSameTuple.
72         * include/std/tuple (_TMCT): New.
73         * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
74         * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
75         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
76               const tuple<_UElements...>&)): Likewise.
77         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
78               tuple<_UElements...>&&)): Likewise.
79         * testsuite/20_util/tuple/cons/66338.cc: New.
81 2016-05-25  Jonathan Wakely  <jwakely@redhat.com>
83         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
84         * configure: Regenerate.
85         * config.h.in: Regenerate.
87         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
88         * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
89         Remove const qualification on function. Replace
90         _GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
91         (_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
92         (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
94 2016-05-24  François Dumont  <fdumont@gcc.gnu.org>
96         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
97         * include/bits/hashtable_policy.h
98         (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
99         having load factor management.
100         (_Mask_range_hashing): New.
101         (__clp2): New.
102         (_Power2_rehash_policy): New.
103         (_Inserts<>): Remove last template parameter, _Unique_keys, so that
104         partial specializations only depend on whether iterators are constant
105         or not.
106         * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
107         test new hash policy.
108         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
109         Likewise.
110         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
111         Likewise.
112         * testsuite/23_containers/unordered_set/insert/hash_policy.cc:
113         Likewise.
114         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
115         Likewise.
116         * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
117         New.
118         * testsuite/performance/23_containers/insert/54075.cc: Add benchmark
119         using the new hash policy.
120         * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
122 2016-05-24  Jonathan Wakely  <jwakely@redhat.com>
124         * include/bits/stl_queue.h (priority_queue::value_compare): Define.
126 2016-05-23  François Dumont  <fdumont@gcc.gnu.org>
128         * include/debug/safe_iterator.h
129         (_Safe_iterator<>::operator->()): Implement using underlying iterator
130         operator ->.
131         * include/debug/safe_local_iterator.h
132         (_Safe_local_iterator<>::operator->()): Likewise.
134 2016-05-20  Thomas Preud'homme  <thomas.preudhomme@arm.com>
136         * testsuite/experimental/memory_resource/1.cc: Add required argument
137         to dg-require-atomic-builtins.
139 2016-05-13  Jonathan Wakely  <jwakely@redhat.com>
141         PR libstdc++/71073
142         * include/debug/bitset: Add #pragma GCC system_header.
143         * include/debug/deque: Likewise.
144         * include/debug/list: Likewise.
145         * include/debug/map: Likewise.
146         * include/debug/set: Likewise.
147         * include/debug/string: Likewise.
148         * include/debug/unordered_map: Likewise.
149         * include/debug/unordered_set: Likewise.
150         * include/debug/vector: Likewise.
151         * include/debug/functions.h: Adjust whitespace.
153 2016-05-12  Jonathan Wakely  <jwakely@redhat.com>
155         PR libstdc++/71081
156         * testsuite/experimental/memory_resource/1.cc: Require atomics.
158 2016-05-11  Jonathan Wakely  <jwakely@redhat.com>
160         PR libstdc++/71049
161         * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
162         exception constructors with __sso_string parameters.
164 2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
166         * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
167         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
168         Test begin and end functions.
169         * testsuite/experimental/filesystem/iterators/
170         recursive_directory_iterator.cc: Likewise.
172         PR libstdc++/71038
173         * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
174         * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
176         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
177         Overload operator* to move from rvalues.
179         PR libstdc++/71036
180         * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
181         * testsuite/experimental/filesystem/operations/create_directory.cc:
182         New test.
184         PR libstdc++/71037
185         * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
186         base path to exception.
187         * testsuite/experimental/filesystem/operations/canonical.cc: Test
188         paths contained in exception.
190         * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
191         using declaration.
193         PR libstdc++/71005
194         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
195         New type.
196         (directory_iterator::operator++(int)): Return proxy.
197         (recursive_directory_iterator::operator++(int)): Likewise.
198         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
199         Test post-increment.
200         * testsuite/experimental/filesystem/iterators/
201         recursive_directory_iterator.cc: Likewise.
203 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
205         PR libstdc++/71004
206         * testsuite/experimental/filesystem/iterators/
207         recursive_directory_iterator.cc: Fix test02 to not call member
208         functions on invalid iterator, and use VERIFY not assert.
210 2016-05-09  Ville Voutilainen  <ville.voutilainen@gmail.com>
212         Avoid endless run-time recursion for copying single-element
213         tuples where the element type is by-value constructible
214         from any type.
215         * include/std/tuple (_NotSameTuple): New.
216         * include/std/tuple (tuple(_UElements&&...): Use it.
217         * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
219 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
221         PR libstdc++/71004
222         * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
223         Initialize scalar member variables in default constructor.
224         * testsuite/experimental/filesystem/iterators/
225         recursive_directory_iterator.cc: Test default construction.
227 2016-05-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
229         * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
231 2016-05-05  Jonathan Wakely  <jwakely@redhat.com>
233         * testsuite/experimental/filesystem/path/native/string.cc: Add
234         dg-require-filesystem-ts directive.
236 2016-05-04  Jonathan Wakely  <jwakely@redhat.com>
238         PR libstdc++/70940
239         * include/experimental/memory_resource
240         (__resource_adaptor_imp::do_allocate): Do not default-construct
241         rebound allocator.
242         (__resource_adaptor_imp::do_deallocate): Likewise. Use
243         allocator_traits to get pointer type.
244         (__null_memory_resource::do_allocate): Remove unused parameters.
245         (__null_memory_resource::do_deallocate): Likewise.
246         (__null_memory_resource::do_is_equal): Likewise. Add return statement.
247         * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
248         * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
249         move to ...
250         * testsuite/experimental/memory_resource/1.cc: Here.
251         * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
252         * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
254 2016-04-29  Chris Gregory  <czipperz@gmail.com>
256         * config/*: Remove trailing whitespace.
257         * src/*: Likewise.
258         * testsuite/tr1/*: Likewise.
259         * testsuite/util/*: Likewise.
261 2016-04-28  Jonathan Wakely  <jwakely@redhat.com>
263         PR libstdc++/70766
264         * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
265         __addressof.
266         * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
267         Likewise.
268         * include/std/atomic (atomic<_Tp>): Likewise.
269         * include/std/shared_mutex (shared_lock): Likewise.
270         * testsuite/24_iterators/istream_iterator/70766.cc: New test.
271         * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
272         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
273         * testsuite/29_atomics/atomic/70766.cc: New test.
274         * testsuite/30_threads/shared_lock/70766.cc: New test.
276         * include/bits/hashtable_policy.h (__detail::_Insert_base,
277         __detail::_Insert): Improve comments.
279 2016-04-27  Jonathan Wakely  <jwakely@redhat.com>
281         PR libstdc++/70767
282         * include/std/limits: Update comments about DRs.
283         (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
284         numeric_limits<const volatile _Tp>): Define unconditionally.
286 2016-04-24  Jonathan Wakely  <jwakely@redhat.com>
288         PR libstdc++/70762
289         * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
290         static counter to return a different path on every call.
292 2016-04-22  Tim Shen  <timshen@google.com>
294         PR libstdc++/70745
295         * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
296         Fix the match_not_bow and match_not_eow behavior.
297         * testsuite/28_regex/regression.cc: Add testcase.
299 2016-04-20  Jonathan Wakely  <jwakely@redhat.com>
301         PR libstdc++/69703
302         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
303         __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
305 2016-04-19  Jonathan Wakely  <jwakely@redhat.com>
307         PR libstdc++/69703
308         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
309         Override endianness bit in mode.
310         * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
311         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
312         that little_endian mode is ignored.
313         * testsuite/experimental/filesystem/path/native/string.cc: New test.
315         PR libstdc++/70609
316         * src/filesystem/ops.cc (close_fd): New function.
317         (do_copy_file): Set permissions before copying file contents. Check
318         result of closing file descriptors. Don't copy streambuf when file
319         is empty.
320         (copy(const path&, const path&, copy_options, error_code&)): Use
321         lstat for source file when copy_symlinks is set.
322         * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
324         * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
325         operator~ operator&=, operator|=, operator^=): Add noexcept to
326         overloaded operators for copy_options, perms and directory_options.
327         * src/filesystem/ops.cc (make_file_type, make_file_status,
328         is_not_found_errno, file_time): Add noexcept.
330 2016-04-19  Edward Smith-Rowland  <3dw4rd@verizon.net>
332         * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
334 2016-04-18  Jonathan Wakely  <jwakely@redhat.com>
336         PR libstdc++/41759
337         * include/bits/random.h: Reword static assertion messages to state
338         positive conditions.
339         * include/bits/random.tcc: Likewise.
340         * include/bits/uniform_int_dist.h: Likewise.
341         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
342         patterns.
344         * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
346         * config/cpu/sh/atomicity.h: Fix typo in comment.
348         PR libstdc++/70294
349         * include/std/thread (operator<, operator==): Move definitions to
350         namespace-scope.
351         * testsuite/30_threads/thread/id/70294.cc: New test.
353         * testsuite/18_support/bad_exception/23591_thread-1.c: Add
354         -Wno-pedantic to dg-options.
355         * testsuite/20_util/align/2.cc: Use type as operand of alignof.
356         * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
357         to dg-options.
358         * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
359         Remove extra semi-colon.
360         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
361         Always supply second argument to static_assert.
362         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
363         semi-colon.
364         * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
365         dg-options.
366         * testsuite/26_numerics/complex/literals/values.cc: Likewise.
367         * testsuite/29_atomics/atomic/60695.cc: Likewise.
368         * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
369         alignof when operand is an object not a type.
370         * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
371         * testsuite/decimal/make-decimal.cc: Likewise.
372         * testsuite/experimental/type_traits/value.cc: Always supply second
373         argument to static_assert.
374         * testsuite/util/testsuite_common_types.h: Use __extension__ for
375         __int128 types.
377         * testsuite/experimental/type_erased_allocator/1.cc: Don't include
378         internal header.
379         * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
380         * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
381         * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
382         Likewise. Add licence and change to compile-only test.
384         * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
385         unused parameter.
386         * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
388         * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
389         warnings.
391 2016-04-17  Edward Smith-Rowland  <3dw4rd@verizon.net>
393         * include/bits/specfun.h: Trivial comment misspelling.
395 2016-04-14  Jason Merrill  <jason@redhat.com>
397         Revert Jonathan's empty ABI change from yesterday.
399 2016-04-13  Martin Sebor  <msebor@redhat.com>
401         PR c++/69517
402         * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
403         upper bound is positive.
405 2016-04-13  Jonathan Wakely  <jwakely@redhat.com>
407         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
408         _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
409         * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
410         of functions taking empty structs by value. Add a template parameter
411         to overloads without hints. Rename overloads with hints to
412         _M_emplace_hint.
413         (_Hashtable::_M_erase(true_type, const_iterator),
414         _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
415         by reordering parameters.
416         * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
417         _M_emplace_hint instead of _M_emplace.
418         * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
419         shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
420         * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
421         __shared_ptr): Likewise.
422         * include/bits/stl_algo.h (replace_if): Likewise.
423         * include/bits/stl_pair.h (piecewise_construct_t,
424         piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
425         * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
426         __uses_alloc0): Likewise.
427         * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
428         * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
429         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
430         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
431         * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
432         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
433         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
435 2016-04-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
437         Document C++17/TR29124 C++ Special Math Functions.
438         * include/bits/specfun.h: Add Doxygen markup.
440 2016-04-07  Jonathan Wakely  <jwakely@redhat.com>
442         * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
444 2016-04-06  Eric Botcazou  <ebotcazou@adacore.com>
446         * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
447         * src/Makefile.in: Regenerate.
449 2016-04-05  Jonathan Wakely  <jwakely@redhat.com>
451         PR libstdc++/70554
452         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
453         __atomic_fetch_add for bool.
454         * configure: Regenerate.
456         * testsuite/30_threads/thread/70503.cc: Require -static to work.
458         PR libstdc++/70503
459         * src/c++11/thread.cc (execute_native_thread_routine,
460         execute_native_thread_routine_compat): Give internal linkage.
461         * testsuite/30_threads/thread/70503.cc: New test.
463 2016-04-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
465         PR libstdc++/70437
466         * include/bits/stl_pair.h (_ConstructiblePair,
467         _ImplicitlyConvertiblePair, _MoveConstructiblePair,
468         _ImplicitlyMoveConvertiblePair): Add shortcut conditions
469         for same-type cases.
470         * testsuite/20_util/pair/70437.cc: New.
472 2016-03-24  Jonathan Wakely  <jwakely@redhat.com>
474         PR libstdc++/69945
475         * config/abi/pre/gnu.ver: Add new symbol.
476         * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
477         * testsuite/18_support/free_eh_pool.cc: New test.
479 2016-03-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
481         * include/Makefile.am (install-freestanding-headers): Add
482         concept_check.h and move.h to the installed headers.
483         * include/Makefile.in: Regenerated.
484         * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
485         freestanding implementations.
486         * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
487         that this macro has no effect for freestanding implementations.
488         * doc/html/manual/using_macros.html: Likewise.
490 2016-02-24  Jonathan Wakely  <jwakely@redhat.com>
492         PR libstdc++/69939
493         * include/experimental/tuple (__apply_impl): Qualify get and forward.
495 2016-02-23  Jonathan Wakely  <jwakely@redhat.com>
497         * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
498         * doc/html/*: Regenerate.
500         PR libstdc++/69893
501         * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
502         exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
503         llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
504         nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
505         trunc) [__cplusplus >= 201103L]: Import from namespace std.
506         (fabs) [__cplusplus < 201103L]: Import from namespace std.
507         * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
508         Likewise.
509         * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
510         namespace before including TR1 headers.
511         * testsuite/tr1/headers/c++200x/math.cc: New test.
513 2016-02-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
515         PR libstdc++/69881
516         * include/c_global/cstdarg: Undefine __need___va_list.
517         * include/c_global/cstddef: Undefine all kinds of __need_*.
519 2016-02-16  Tim Shen  <timshen@google.com>
521         PR libstdc++/69794
522         * include/bits/regex_scanner.h: Add different special character
523         sets for grep and egrep regex.
524         * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
525         * testsuite/28_regex/regression.cc: Add new testcase.
527 2016-02-08  Jonathan Wakely  <jwakely@redhat.com>
529         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
530         added 'constexpr' in previous commit.
531         * configure: Regenerate.
533         PR libstdc++/48891
534         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
535         checks for all targets except *-*-solaris2.* and ensure we find the
536         libc math.h header not our own.
537         * configure: Regenerate.
539 2016-02-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>
541         * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
542         New file.  Copied over from s390-linux-gnu.
544 2016-02-04  Jonathan Wakely  <jwakely@redhat.com>
546         PR libstdc++/69626
547         * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
548         with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
549         * config.h.in: Regenerate.
550         * configure: Regenerate.
551         * testsuite/21_strings/c_strings/char/69626.cc: New.
553         * doc/html/index.html: Regenerate.
555         * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
556         * doc/xml/manual/spine.xml: Update copyright years and author blurb.
557         * doc/html/*: Regenerate.
559 2016-02-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
561         PR libstdc++/69581
562         * include/c_compatibility/math.h: Move header guards.
563         * include/c_compatibility/stdlib.h: Likewise.
565 2016-01-29  Jonathan Wakely  <jwakely@redhat.com>
567         PR libstdc++/69506
568         * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
570 2016-01-28  John David Anglin  <danglin@gcc.gnu.org>
572         PR libstdc++/69450
573         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
574         isinf and isnan functions into two independent checks.  Check on hpux.
575         * config.h.in: Regenerate.
576         * configure: Regenerate.
577         * include/c_global/cmath (isinf(double), isnan(double)): Use
578         _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
579         respectively.
581 2016-01-27  Jakub Jelinek  <jakub@redhat.com>
583         * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
585 2016-01-27  Jonathan Wakely  <jwakely@redhat.com>
587         PR libstdc++/69295
588         * testsuite/ext/special_functions/hyperg/check_value.cc: Use
589         -ffp-contract=off, and -ffloat-store to disable excess precision.
590         * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
591         -ffp-contract=off.
593 2016-01-26  Jonathan Wakely  <jwakely@redhat.com>
595         PR libstdc++/69478
596         * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
597         random_access_iterator_tag>): Check is_move_assignable when moving.
598         (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
599         Likewise.
600         * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
601         * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
602         * testsuite/25_algorithms/move/69478.cc: New.
603         * testsuite/25_algorithms/move_backward/69478.cc: new.
605 2016-01-26  Andris Pavenis  <andris.pavenis@iki.fi>
607         * include/c_compatibility/stdlib.h: Include wide character related
608         definitions only when they are available in cstdlib.
610 2016-01-25  Jonathan Wakely  <jwakely@redhat.com>
612         PR libstdc++/69464
613         * include/Makefile.am: Add new header.
614         * include/Makefile.in: Regenerate.
615         * include/bits/random.h (uniform_int_distribution): Move to
616         bits/uniform_int_dist.h.
617         * include/bits/random.tcc (uniform_int_distribution::operator(),
618         uniform_int_distribution::__generate_impl): Likewise.
619         * include/bits/uniform_int_dist.h: New header.
620         * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
621         <bits/uniform_int_dist.h> instead of <random>.
622         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
623         move_iterators/1.cc: Include correct header for uninitialized_copy.
624         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
625         move_iterators/1.cc: Likewise.
626         * testsuite/25_algorithms/nth_element/58800.cc: Include correct
627         header for vector.
628         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
630 2016-01-23  John David Anglin  <danglin@gcc.gnu.org>
632         PR libstdc++/69446
633         * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
635 2016-01-22  Edward Smith-Rowland  <3dw4rd@verizon.net>
637         TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
638         * include/c_compatibility/math.h: Import the TR29124 functions
639         into the global namespace.
640         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
641         xfail and make compile-only.
642         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
643         * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
644         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
645         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
646         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
647         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
648         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
649         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
650         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
651         * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
652         * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
653         * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
654         * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
655         * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
656         * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
657         * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
658         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
659         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
660         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
661         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
663 2016-01-22  Jonathan Wakely  <jwakely@redhat.com>
665         PR libstdc++/69116
666         * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
667         define result_type for types which can be safely used with valarrays.
668         * testsuite/26_numerics/valarray/69116.cc: New.
670         PR libstdc++/69413
671         * config/os/gnu-linux/os_defines.h: Define
672         _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
673         * include/c_global/cmath (isinf, isnan): Check it.
674         * doc/xml/manual/internals.xml: Document it.
675         * doc/html/*: Regenerate.
677 2016-01-21  Jonathan Wakely  <jwakely@redhat.com>
679         PR libstdc++/69406
680         * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
681         * include/ext/type_traits.h: Likewise.
682         * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
683         for presence of C headers.
684         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
685         dg-error line number.
686         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
687         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
688         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
690 2016-01-20  Torvald Riegel  <triegel@redhat.com>
692         PR libstdc++/69310
693         * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
695 2016-01-20  Jonathan Wakely  <jwakely@redhat.com>
697         PR libstdc++/60401
698         * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
699         copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
700         lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
701         nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
702         tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
703         Add using declarations.
704         * testsuite/26_numerics/headers/cmath/60401.cc: New.
706         PR libstdc++/69386
707         * include/c_global/ccomplex: Ensure C++ language linkage.
708         * include/c_global/cmath: Likewise.
709         * include/c_global/cstdlib: Likewise.
710         * include/c_global/ctgmath: Likewise.
711         * testsuite/17_intro/headers/c++2011/linkage.cc: New.
713 2016-01-19  Jonathan Wakely  <jwakely@redhat.com>
715         PR libstdc++/14608
716         PR libstdc++/60401
717         * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
718         --enable-cheaders=c_global configs.
719         * include/Makefile.in: Regenerate.
720         * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
721         test and allow inclusion from C files.
722         * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
723         (at_quick_exit, quick_exit): Add using directives.
724         * include/c_global/cmath: Use #include_next for math.h.
725         * include/c_global/cstdlib: Use #include_next for stdlib.h.
726         * testsuite/26_numerics/headers/cmath/14608.cc: New.
727         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
728         Remove xfail for most targets.
729         * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
731 2016-01-18  Torvald Riegel  <triegel@redhat.com>
733         * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
734         (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
735         and move after its definition.
736         * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
737         * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
738         __GXX_WEAK__, and only provide transactional clones if
739         _GLIBCXX_USE_WEAK_REF is true.  Don't provide stubs of libitm
740         functions.
742 2016-01-18  Jonathan Wakely  <jwakely@redhat.com>
744         PR libstdc++/60637
745         * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
747         PR libstdc++/69243
748         * include/std/functional (_Function_base::_M_not_empty_function):
749         Change overloads for pointers to take arguments by value.
750         * testsuite/20_util/function/cons/57465.cc: Add tests for
751         pointer-to-member cases.
753         PR libstdc++/69340
754         * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
755         Use macros for exception handling and fix unused parameter warning.
757 2016-01-17  John David Anglin  <danglin@gcc.gnu.org>
759         PR libstdc++/68734
760         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
762 2016-01-17  Torvald Riegel  <triegel@redhat.com>
764         * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
766 2016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
768         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
769         __int128 symbols.
771 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
773         PR libstdc++/69293
774         * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
775         static assertion that type is constructible from the arguments.
776         * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
777         * testsuite/20_util/uses_allocator/69293_neg.cc: New.
778         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
780         PR libstdc++/69294
781         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
782         and isnan on AIX. Quote variables.
783         * configure: Regenerate.
785 2016-01-15  Torvald Riegel  <triegel@redhat.com>
787         * include/bits/basic_string.h (basic_string): Declare friends.
788         * include/bits/c++config (_GLIBCXX_TXN_SAFE,
789         _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
790         * include/std/stdexcept (logic_error, domain_error, invalid_argument,
791         length_error, out_of_range, runtime_error, range_error,
792         underflow_error, overflow_error): Declare members as transaction-safe.
793         (logic_error, runtime_error): Declare friend functions.
794         * libsupc++/exception (exception, bad_exception): Declare members as
795         transaction-safe.
796         * src/c++11/cow-stdexcept.cc: Define transactional clones for the
797         transaction-safe members of exceptions and helper functions.
798         * libsupc++/eh_exception.cc: Adjust and define transactional clones.
799         * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
800         (CXXABI_1.3.10): New.
801         * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
802         (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
803         * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
804         * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
805         * include/Makefile.in: Regenerate.
806         * config.h.in: Regenerate.
807         * configure: Regenerate.
808         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
810 2016-01-15  Steve Ellcey  <sellcey@imgtec.com>
812         * include/ext/random.tcc: Use __builtin_isfinite instead of
813         std::isfinite.
815 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
817         * include/bits/std_mutex.h: Fix Doxygen @file name.
819 2016-01-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
820             Jonathan Wakely  <jwakely@redhat.com>
821             Florian Goth <CaptainSifff@gmx.de>
823         Implement TR29124 C++ special Math Functions.
824         * include/Makefile.am: Add new headers.
825         * include/Makefile.in: Regenerate.
826         * include/bits/specfun.h: New.
827         * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
828         * include/tr1/bessel_function.tcc: Ditto.
829         * include/tr1/beta_function.tcc: Ditto.
830         * include/tr1/cmath: Ditto.
831         * include/tr1/ell_integral.tcc: Ditto.
832         * include/tr1/exp_integral.tcc: Ditto.
833         * include/tr1/gamma.tcc: Ditto.
834         * include/tr1/hypergeometric.tcc: Ditto.
835         * include/tr1/legendre_function.tcc: Ditto.
836         * include/tr1/modified_bessel_func.tcc: Ditto.
837         * include/tr1/poly_hermite.tcc: Ditto.
838         * include/tr1/poly_laguerre.tcc: Ditto.
839         * include/tr1/riemann_zeta.tcc: Ditto.
840         * include/tr1/special_function_util.h: Ditto.
841         * testsuite/ext/special_functions/conf_hyperg: New.
842         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
843         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
844         * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
845         * testsuite/ext/special_functions/hyperg: New.
846         * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
847         * testsuite/ext/special_functions/hyperg/check_value.cc: New.
848         * testsuite/ext/special_functions/hyperg/compile.cc: New.
849         * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
850         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
851         * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
852         * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
853         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
854         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
855         * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
856         * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
857         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
858         * testsuite/special_functions/03_beta/check_nan.cc: New.
859         * testsuite/special_functions/03_beta/check_value.cc: New.
860         * testsuite/special_functions/03_beta/compile.cc: New.
861         * testsuite/special_functions/03_beta/compile_2.cc: New.
862         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
863         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
864         * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
865         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
866         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
867         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
868         * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
869         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
870         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
871         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
872         * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
873         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
874         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
875         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
876         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
877         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
878         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
879         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
880         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
881         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
882         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
883         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
884         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
885         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
886         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
887         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
888         * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
889         * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
890         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
891         * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
892         * testsuite/special_functions/11_ellint_1/check_value.cc: New.
893         * testsuite/special_functions/11_ellint_1/compile.cc: New.
894         * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
895         * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
896         * testsuite/special_functions/12_ellint_2/check_value.cc: New.
897         * testsuite/special_functions/12_ellint_2/compile.cc: New.
898         * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
899         * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
900         * testsuite/special_functions/13_ellint_3/check_value.cc: New.
901         * testsuite/special_functions/13_ellint_3/compile.cc: New.
902         * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
903         * testsuite/special_functions/14_expint/check_nan.cc: New.
904         * testsuite/special_functions/14_expint/check_value.cc: New.
905         * testsuite/special_functions/14_expint/compile.cc: New.
906         * testsuite/special_functions/14_expint/compile_2.cc: New.
907         * testsuite/special_functions/15_hermite/check_nan.cc: New.
908         * testsuite/special_functions/15_hermite/check_value.cc: New.
909         * testsuite/special_functions/15_hermite/compile.cc: New.
910         * testsuite/special_functions/15_hermite/compile_2.cc: New.
911         * testsuite/special_functions/16_laguerre/check_nan.cc: New.
912         * testsuite/special_functions/16_laguerre/check_value.cc: New.
913         * testsuite/special_functions/16_laguerre/compile.cc: New.
914         * testsuite/special_functions/16_laguerre/compile_2.cc: New.
915         * testsuite/special_functions/17_legendre/check_nan.cc: New.
916         * testsuite/special_functions/17_legendre/check_value.cc: New.
917         * testsuite/special_functions/17_legendre/compile.cc: New.
918         * testsuite/special_functions/17_legendre/compile_2.cc: New.
919         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
920         * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
921         * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
922         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
923         * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
924         * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
925         * testsuite/special_functions/19_sph_bessel/compile.cc: New.
926         * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
927         * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
928         * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
929         * testsuite/special_functions/20_sph_legendre/compile.cc: New.
930         * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
931         * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
932         * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
933         * testsuite/special_functions/21_sph_neumann/compile.cc: New.
934         * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
935         * testsuite/util/specfun_testcase.h: New.
936         * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
937         * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
938         * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
939         * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
940         * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
941         * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
942         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
944 2016-01-13  Jonathan Wakely  <jwakely@redhat.com>
946         PR libstdc++/48891
947         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
948         and isnan functions.
949         * config.h.in: Regenerate.
950         * configure: Regenerate.
951         * include/c_global/cmath (isinf(double), isnan(double))
952         [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
953         * testsuite/26_numerics/headers/cmath/48891.cc: New.
955 2016-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
957         PR libstdc++/66006
958         * configure.host (abi_baseline_pair): Use separate baseline for
959         Solaris 11+ and Solaris 10 with gld.
960         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
961         * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
962         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
964 2016-01-12  Daniel Kruegler  <daniel.kruegler@gmail.com>
966         PR libstdc++/68877
967         * include/std/type_traits: Following N4511, reimplement __is_swappable
968         and __is_nothrow_swappable. Move __is_swappable to namespace std,
969         adjust callers. Use __is_nothrow_swappable in swap.
970         * include/bits/move.h: Use __is_nothrow_swappable in swap.
971         * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
972         __is_swappable related tests.
973         * testsuite/20_util/is_swappable/value.cc: New.
974         * testsuite/20_util/is_swappable/requirements/
975         explicit_instantiation.cc: New.
976         * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
977         * testsuite/25_algorithms/swap/68877.cc: New.
979 2016-01-12  Jonathan Wakely  <jwakely@redhat.com>
981         * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
983         PR libstdc++/69005
984         PR libstdc++/69222
985         * include/std/functional (function::_Invoke): Remove, use result_of.
986         (function::_Callable): Replace alias template with class template
987         and use partial specialization instead of _NotSelf alias template.
988         (function(_Functor)): Add "not self" constraint so that _Callable is
989         not used while type is incomplete.
990         * testsuite/20_util/function/69222.cc: New.
992 2016-01-11  Jonathan Wakely  <jwakely@redhat.com>
994         PR libstdc++/60976
995         * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
996         Define partial specialization.
997         * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
998         destroy members to std::allocator explicit specialization.
1000 2016-01-08  Jonathan Wakely  <jwakely@redhat.com>
1002         * testsuite/26_numerics/headers/cmath/
1003         c99_classification_macros_c++.cc: Rename to ...
1004         * testsuite/26_numerics/headers/cmath/
1005         c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
1006         * testsuite/26_numerics/headers/cmath/
1007         c99_classification_macros_c++0x.cc: Rename to ...
1008         * testsuite/26_numerics/headers/cmath/
1009         c99_classification_macros_c++11.cc: Here.
1011         PR libstdc++/69190
1012         * include/bits/uses_allocator.h: Add missing include.
1014 2016-01-07  Jonathan Wakely  <jwakely@redhat.com>
1016         PR libstdc++/69105
1017         PR libstdc++/69106
1018         PR libstdc++/69114
1019         * include/bits/stl_iterator.h (back_insert_iterator,
1020         front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
1021         * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
1022         * include/std/future (__future::base::_State_baseV2::__setter):
1023         Likewise.
1024         * include/std/scoped_allocator (__outermost): Likewise.
1025         * testsuite/20_util/scoped_allocator/69114.cc: New.
1026         * testsuite/20_util/uses_allocator/69114.cc: New.
1027         * testsuite/30_threads/promise/69106.cc: New.
1029 2016-01-06  Jonathan Wakely  <jwakely@redhat.com>
1031         PR libstdc++/69092
1032         * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
1033         Remove _GLIBCXX_NOEXCEPT.
1034         testsuite/21_strings/basic_string/cons/char/69092.cc: New.
1036         * include/Makefile.am: Adjust.
1037         * include/Makefile.in: Regenerate.
1038         * include/bits/mutex.h: Rename to bits/std_mutex.h.
1039         * include/std/condition_variable: Adjust include.
1040         * include/std/mutex: Likewise.
1042 2016-01-04  Jakub Jelinek  <jakub@redhat.com>
1044         Update copyright years.
1046 Copyright (C) 2016 Free Software Foundation, Inc.
1048 Copying and distribution of this file, with or without modification,
1049 are permitted in any medium without royalty provided the copyright
1050 notice and this notice are preserved.