PR libstdc++/41759 reword static assertions in <random>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob4dfe22bd932f51f03015a24a6e6363d6d8c5cf6a
1 2016-04-18  Jonathan Wakely  <jwakely@redhat.com>
3         PR libstdc++/41759
4         * include/bits/random.h: Reword static assertion messages to state
5         positive conditions.
6         * include/bits/random.tcc: Likewise.
7         * include/bits/uniform_int_dist.h: Likewise.
8         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
9         patterns.
11         * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
13         * config/cpu/sh/atomicity.h: Fix typo in comment.
15         PR libstdc++/70294
16         * include/std/thread (operator<, operator==): Move definitions to
17         namespace-scope.
18         * testsuite/30_threads/thread/id/70294.cc: New test.
20         * testsuite/18_support/bad_exception/23591_thread-1.c: Add
21         -Wno-pedantic to dg-options.
22         * testsuite/20_util/align/2.cc: Use type as operand of alignof.
23         * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
24         to dg-options.
25         * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
26         Remove extra semi-colon.
27         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
28         Always supply second argument to static_assert.
29         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
30         semi-colon.
31         * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
32         dg-options.
33         * testsuite/26_numerics/complex/literals/values.cc: Likewise.
34         * testsuite/29_atomics/atomic/60695.cc: Likewise.
35         * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
36         alignof when operand is an object not a type.
37         * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
38         * testsuite/decimal/make-decimal.cc: Likewise.
39         * testsuite/experimental/type_traits/value.cc: Always supply second
40         argument to static_assert.
41         * testsuite/util/testsuite_common_types.h: Use __extension__ for
42         __int128 types.
44         * testsuite/experimental/type_erased_allocator/1.cc: Don't include
45         internal header.
46         * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
47         * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
48         * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
49         Likewise. Add licence and change to compile-only test.
51         * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
52         unused parameter.
53         * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
55         * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
56         warnings.
58 2016-04-17  Edward Smith-Rowland  <3dw4rd@verizon.net>
60         * include/bits/specfun.h: Trivial comment misspelling.
62 2016-04-14  Jason Merrill  <jason@redhat.com>
64         Revert Jonathan's empty ABI change from yesterday.
66 2016-04-13  Martin Sebor  <msebor@redhat.com>
68         PR c++/69517
69         * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
70         upper bound is positive.
72 2016-04-13  Jonathan Wakely  <jwakely@redhat.com>
74         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
75         _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
76         * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
77         of functions taking empty structs by value. Add a template parameter
78         to overloads without hints. Rename overloads with hints to
79         _M_emplace_hint.
80         (_Hashtable::_M_erase(true_type, const_iterator),
81         _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
82         by reordering parameters.
83         * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
84         _M_emplace_hint instead of _M_emplace.
85         * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
86         shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
87         * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
88         __shared_ptr): Likewise.
89         * include/bits/stl_algo.h (replace_if): Likewise.
90         * include/bits/stl_pair.h (piecewise_construct_t,
91         piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
92         * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
93         __uses_alloc0): Likewise.
94         * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
95         * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
96         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
97         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
98         * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
99         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
100         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
102 2016-04-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
104         Document C++17/TR29124 C++ Special Math Functions.
105         * include/bits/specfun.h: Add Doxygen markup.
107 2016-04-07  Jonathan Wakely  <jwakely@redhat.com>
109         * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
111 2016-04-06  Eric Botcazou  <ebotcazou@adacore.com>
113         * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
114         * src/Makefile.in: Regenerate.
116 2016-04-05  Jonathan Wakely  <jwakely@redhat.com>
118         PR libstdc++/70554
119         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
120         __atomic_fetch_add for bool.
121         * configure: Regenerate.
123         * testsuite/30_threads/thread/70503.cc: Require -static to work.
125         PR libstdc++/70503
126         * src/c++11/thread.cc (execute_native_thread_routine,
127         execute_native_thread_routine_compat): Give internal linkage.
128         * testsuite/30_threads/thread/70503.cc: New test.
130 2016-04-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
132         PR libstdc++/70437
133         * include/bits/stl_pair.h (_ConstructiblePair,
134         _ImplicitlyConvertiblePair, _MoveConstructiblePair,
135         _ImplicitlyMoveConvertiblePair): Add shortcut conditions
136         for same-type cases.
137         * testsuite/20_util/pair/70437.cc: New.
139 2016-03-24  Jonathan Wakely  <jwakely@redhat.com>
141         PR libstdc++/69945
142         * config/abi/pre/gnu.ver: Add new symbol.
143         * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
144         * testsuite/18_support/free_eh_pool.cc: New test.
146 2016-03-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
148         * include/Makefile.am (install-freestanding-headers): Add
149         concept_check.h and move.h to the installed headers.
150         * include/Makefile.in: Regenerated.
151         * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
152         freestanding implementations.
153         * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
154         that this macro has no effect for freestanding implementations.
155         * doc/html/manual/using_macros.html: Likewise.
157 2016-02-24  Jonathan Wakely  <jwakely@redhat.com>
159         PR libstdc++/69939
160         * include/experimental/tuple (__apply_impl): Qualify get and forward.
162 2016-02-23  Jonathan Wakely  <jwakely@redhat.com>
164         * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
165         * doc/html/*: Regenerate.
167         PR libstdc++/69893
168         * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
169         exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
170         llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
171         nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
172         trunc) [__cplusplus >= 201103L]: Import from namespace std.
173         (fabs) [__cplusplus < 201103L]: Import from namespace std.
174         * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
175         Likewise.
176         * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
177         namespace before including TR1 headers.
178         * testsuite/tr1/headers/c++200x/math.cc: New test.
180 2016-02-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
182         PR libstdc++/69881
183         * include/c_global/cstdarg: Undefine __need___va_list.
184         * include/c_global/cstddef: Undefine all kinds of __need_*.
186 2016-02-16  Tim Shen  <timshen@google.com>
188         PR libstdc++/69794
189         * include/bits/regex_scanner.h: Add different special character
190         sets for grep and egrep regex.
191         * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
192         * testsuite/28_regex/regression.cc: Add new testcase.
194 2016-02-08  Jonathan Wakely  <jwakely@redhat.com>
196         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
197         added 'constexpr' in previous commit.
198         * configure: Regenerate.
200         PR libstdc++/48891
201         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
202         checks for all targets except *-*-solaris2.* and ensure we find the
203         libc math.h header not our own.
204         * configure: Regenerate.
206 2016-02-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>
208         * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
209         New file.  Copied over from s390-linux-gnu.
211 2016-02-04  Jonathan Wakely  <jwakely@redhat.com>
213         PR libstdc++/69626
214         * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
215         with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
216         * config.h.in: Regenerate.
217         * configure: Regenerate.
218         * testsuite/21_strings/c_strings/char/69626.cc: New.
220         * doc/html/index.html: Regenerate.
222         * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
223         * doc/xml/manual/spine.xml: Update copyright years and author blurb.
224         * doc/html/*: Regenerate.
226 2016-02-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
228         PR libstdc++/69581
229         * include/c_compatibility/math.h: Move header guards.
230         * include/c_compatibility/stdlib.h: Likewise.
232 2016-01-29  Jonathan Wakely  <jwakely@redhat.com>
234         PR libstdc++/69506
235         * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
237 2016-01-28  John David Anglin  <danglin@gcc.gnu.org>
239         PR libstdc++/69450
240         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
241         isinf and isnan functions into two independent checks.  Check on hpux.
242         * config.h.in: Regenerate.
243         * configure: Regenerate.
244         * include/c_global/cmath (isinf(double), isnan(double)): Use
245         _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
246         respectively.
248 2016-01-27  Jakub Jelinek  <jakub@redhat.com>
250         * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
252 2016-01-27  Jonathan Wakely  <jwakely@redhat.com>
254         PR libstdc++/69295
255         * testsuite/ext/special_functions/hyperg/check_value.cc: Use
256         -ffp-contract=off, and -ffloat-store to disable excess precision.
257         * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
258         -ffp-contract=off.
260 2016-01-26  Jonathan Wakely  <jwakely@redhat.com>
262         PR libstdc++/69478
263         * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
264         random_access_iterator_tag>): Check is_move_assignable when moving.
265         (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
266         Likewise.
267         * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
268         * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
269         * testsuite/25_algorithms/move/69478.cc: New.
270         * testsuite/25_algorithms/move_backward/69478.cc: new.
272 2016-01-26  Andris Pavenis  <andris.pavenis@iki.fi>
274         * include/c_compatibility/stdlib.h: Include wide character related
275         definitions only when they are available in cstdlib.
277 2016-01-25  Jonathan Wakely  <jwakely@redhat.com>
279         PR libstdc++/69464
280         * include/Makefile.am: Add new header.
281         * include/Makefile.in: Regenerate.
282         * include/bits/random.h (uniform_int_distribution): Move to
283         bits/uniform_int_dist.h.
284         * include/bits/random.tcc (uniform_int_distribution::operator(),
285         uniform_int_distribution::__generate_impl): Likewise.
286         * include/bits/uniform_int_dist.h: New header.
287         * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
288         <bits/uniform_int_dist.h> instead of <random>.
289         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
290         move_iterators/1.cc: Include correct header for uninitialized_copy.
291         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
292         move_iterators/1.cc: Likewise.
293         * testsuite/25_algorithms/nth_element/58800.cc: Include correct
294         header for vector.
295         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
297 2016-01-23  John David Anglin  <danglin@gcc.gnu.org>
299         PR libstdc++/69446
300         * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
302 2016-01-22  Edward Smith-Rowland  <3dw4rd@verizon.net>
304         TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
305         * include/c_compatibility/math.h: Import the TR29124 functions
306         into the global namespace.
307         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
308         xfail and make compile-only.
309         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
310         * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
311         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
312         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
313         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
314         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
315         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
316         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
317         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
318         * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
319         * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
320         * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
321         * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
322         * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
323         * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
324         * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
325         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
326         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
327         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
328         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
330 2016-01-22  Jonathan Wakely  <jwakely@redhat.com>
332         PR libstdc++/69116
333         * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
334         define result_type for types which can be safely used with valarrays.
335         * testsuite/26_numerics/valarray/69116.cc: New.
337         PR libstdc++/69413
338         * config/os/gnu-linux/os_defines.h: Define
339         _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
340         * include/c_global/cmath (isinf, isnan): Check it.
341         * doc/xml/manual/internals.xml: Document it.
342         * doc/html/*: Regenerate.
344 2016-01-21  Jonathan Wakely  <jwakely@redhat.com>
346         PR libstdc++/69406
347         * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
348         * include/ext/type_traits.h: Likewise.
349         * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
350         for presence of C headers.
351         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
352         dg-error line number.
353         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
354         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
355         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
357 2016-01-20  Torvald Riegel  <triegel@redhat.com>
359         PR libstdc++/69310
360         * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
362 2016-01-20  Jonathan Wakely  <jwakely@redhat.com>
364         PR libstdc++/60401
365         * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
366         copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
367         lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
368         nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
369         tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
370         Add using declarations.
371         * testsuite/26_numerics/headers/cmath/60401.cc: New.
373         PR libstdc++/69386
374         * include/c_global/ccomplex: Ensure C++ language linkage.
375         * include/c_global/cmath: Likewise.
376         * include/c_global/cstdlib: Likewise.
377         * include/c_global/ctgmath: Likewise.
378         * testsuite/17_intro/headers/c++2011/linkage.cc: New.
380 2016-01-19  Jonathan Wakely  <jwakely@redhat.com>
382         PR libstdc++/14608
383         PR libstdc++/60401
384         * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
385         --enable-cheaders=c_global configs.
386         * include/Makefile.in: Regenerate.
387         * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
388         test and allow inclusion from C files.
389         * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
390         (at_quick_exit, quick_exit): Add using directives.
391         * include/c_global/cmath: Use #include_next for math.h.
392         * include/c_global/cstdlib: Use #include_next for stdlib.h.
393         * testsuite/26_numerics/headers/cmath/14608.cc: New.
394         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
395         Remove xfail for most targets.
396         * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
398 2016-01-18  Torvald Riegel  <triegel@redhat.com>
400         * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
401         (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
402         and move after its definition.
403         * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
404         * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
405         __GXX_WEAK__, and only provide transactional clones if
406         _GLIBCXX_USE_WEAK_REF is true.  Don't provide stubs of libitm
407         functions.
409 2016-01-18  Jonathan Wakely  <jwakely@redhat.com>
411         PR libstdc++/60637
412         * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
414         PR libstdc++/69243
415         * include/std/functional (_Function_base::_M_not_empty_function):
416         Change overloads for pointers to take arguments by value.
417         * testsuite/20_util/function/cons/57465.cc: Add tests for
418         pointer-to-member cases.
420         PR libstdc++/69340
421         * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
422         Use macros for exception handling and fix unused parameter warning.
424 2016-01-17  John David Anglin  <danglin@gcc.gnu.org>
426         PR libstdc++/68734
427         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
429 2016-01-17  Torvald Riegel  <triegel@redhat.com>
431         * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
433 2016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
435         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
436         __int128 symbols.
438 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
440         PR libstdc++/69293
441         * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
442         static assertion that type is constructible from the arguments.
443         * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
444         * testsuite/20_util/uses_allocator/69293_neg.cc: New.
445         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
447         PR libstdc++/69294
448         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
449         and isnan on AIX. Quote variables.
450         * configure: Regenerate.
452 2016-01-15  Torvald Riegel  <triegel@redhat.com>
454         * include/bits/basic_string.h (basic_string): Declare friends.
455         * include/bits/c++config (_GLIBCXX_TXN_SAFE,
456         _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
457         * include/std/stdexcept (logic_error, domain_error, invalid_argument,
458         length_error, out_of_range, runtime_error, range_error,
459         underflow_error, overflow_error): Declare members as transaction-safe.
460         (logic_error, runtime_error): Declare friend functions.
461         * libsupc++/exception (exception, bad_exception): Declare members as
462         transaction-safe.
463         * src/c++11/cow-stdexcept.cc: Define transactional clones for the
464         transaction-safe members of exceptions and helper functions.
465         * libsupc++/eh_exception.cc: Adjust and define transactional clones.
466         * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
467         (CXXABI_1.3.10): New.
468         * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
469         (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
470         * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
471         * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
472         * include/Makefile.in: Regenerate.
473         * config.h.in: Regenerate.
474         * configure: Regenerate.
475         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
477 2016-01-15  Steve Ellcey  <sellcey@imgtec.com>
479         * include/ext/random.tcc: Use __builtin_isfinite instead of
480         std::isfinite.
482 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
484         * include/bits/std_mutex.h: Fix Doxygen @file name.
486 2016-01-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
487             Jonathan Wakely  <jwakely@redhat.com>
488             Florian Goth <CaptainSifff@gmx.de>
490         Implement TR29124 C++ special Math Functions.
491         * include/Makefile.am: Add new headers.
492         * include/Makefile.in: Regenerate.
493         * include/bits/specfun.h: New.
494         * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
495         * include/tr1/bessel_function.tcc: Ditto.
496         * include/tr1/beta_function.tcc: Ditto.
497         * include/tr1/cmath: Ditto.
498         * include/tr1/ell_integral.tcc: Ditto.
499         * include/tr1/exp_integral.tcc: Ditto.
500         * include/tr1/gamma.tcc: Ditto.
501         * include/tr1/hypergeometric.tcc: Ditto.
502         * include/tr1/legendre_function.tcc: Ditto.
503         * include/tr1/modified_bessel_func.tcc: Ditto.
504         * include/tr1/poly_hermite.tcc: Ditto.
505         * include/tr1/poly_laguerre.tcc: Ditto.
506         * include/tr1/riemann_zeta.tcc: Ditto.
507         * include/tr1/special_function_util.h: Ditto.
508         * testsuite/ext/special_functions/conf_hyperg: New.
509         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
510         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
511         * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
512         * testsuite/ext/special_functions/hyperg: New.
513         * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
514         * testsuite/ext/special_functions/hyperg/check_value.cc: New.
515         * testsuite/ext/special_functions/hyperg/compile.cc: New.
516         * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
517         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
518         * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
519         * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
520         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
521         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
522         * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
523         * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
524         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
525         * testsuite/special_functions/03_beta/check_nan.cc: New.
526         * testsuite/special_functions/03_beta/check_value.cc: New.
527         * testsuite/special_functions/03_beta/compile.cc: New.
528         * testsuite/special_functions/03_beta/compile_2.cc: New.
529         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
530         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
531         * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
532         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
533         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
534         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
535         * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
536         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
537         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
538         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
539         * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
540         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
541         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
542         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
543         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
544         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
545         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
546         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
547         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
548         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
549         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
550         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
551         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
552         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
553         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
554         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
555         * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
556         * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
557         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
558         * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
559         * testsuite/special_functions/11_ellint_1/check_value.cc: New.
560         * testsuite/special_functions/11_ellint_1/compile.cc: New.
561         * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
562         * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
563         * testsuite/special_functions/12_ellint_2/check_value.cc: New.
564         * testsuite/special_functions/12_ellint_2/compile.cc: New.
565         * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
566         * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
567         * testsuite/special_functions/13_ellint_3/check_value.cc: New.
568         * testsuite/special_functions/13_ellint_3/compile.cc: New.
569         * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
570         * testsuite/special_functions/14_expint/check_nan.cc: New.
571         * testsuite/special_functions/14_expint/check_value.cc: New.
572         * testsuite/special_functions/14_expint/compile.cc: New.
573         * testsuite/special_functions/14_expint/compile_2.cc: New.
574         * testsuite/special_functions/15_hermite/check_nan.cc: New.
575         * testsuite/special_functions/15_hermite/check_value.cc: New.
576         * testsuite/special_functions/15_hermite/compile.cc: New.
577         * testsuite/special_functions/15_hermite/compile_2.cc: New.
578         * testsuite/special_functions/16_laguerre/check_nan.cc: New.
579         * testsuite/special_functions/16_laguerre/check_value.cc: New.
580         * testsuite/special_functions/16_laguerre/compile.cc: New.
581         * testsuite/special_functions/16_laguerre/compile_2.cc: New.
582         * testsuite/special_functions/17_legendre/check_nan.cc: New.
583         * testsuite/special_functions/17_legendre/check_value.cc: New.
584         * testsuite/special_functions/17_legendre/compile.cc: New.
585         * testsuite/special_functions/17_legendre/compile_2.cc: New.
586         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
587         * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
588         * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
589         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
590         * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
591         * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
592         * testsuite/special_functions/19_sph_bessel/compile.cc: New.
593         * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
594         * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
595         * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
596         * testsuite/special_functions/20_sph_legendre/compile.cc: New.
597         * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
598         * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
599         * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
600         * testsuite/special_functions/21_sph_neumann/compile.cc: New.
601         * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
602         * testsuite/util/specfun_testcase.h: New.
603         * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
604         * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
605         * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
606         * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
607         * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
608         * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
609         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
611 2016-01-13  Jonathan Wakely  <jwakely@redhat.com>
613         PR libstdc++/48891
614         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
615         and isnan functions.
616         * config.h.in: Regenerate.
617         * configure: Regenerate.
618         * include/c_global/cmath (isinf(double), isnan(double))
619         [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
620         * testsuite/26_numerics/headers/cmath/48891.cc: New.
622 2016-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
624         PR libstdc++/66006
625         * configure.host (abi_baseline_pair): Use separate baseline for
626         Solaris 11+ and Solaris 10 with gld.
627         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
628         * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
629         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
631 2016-01-12  Daniel Kruegler  <daniel.kruegler@gmail.com>
633         PR libstdc++/68877
634         * include/std/type_traits: Following N4511, reimplement __is_swappable
635         and __is_nothrow_swappable. Move __is_swappable to namespace std,
636         adjust callers. Use __is_nothrow_swappable in swap.
637         * include/bits/move.h: Use __is_nothrow_swappable in swap.
638         * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
639         __is_swappable related tests.
640         * testsuite/20_util/is_swappable/value.cc: New.
641         * testsuite/20_util/is_swappable/requirements/
642         explicit_instantiation.cc: New.
643         * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
644         * testsuite/25_algorithms/swap/68877.cc: New.
646 2016-01-12  Jonathan Wakely  <jwakely@redhat.com>
648         * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
650         PR libstdc++/69005
651         PR libstdc++/69222
652         * include/std/functional (function::_Invoke): Remove, use result_of.
653         (function::_Callable): Replace alias template with class template
654         and use partial specialization instead of _NotSelf alias template.
655         (function(_Functor)): Add "not self" constraint so that _Callable is
656         not used while type is incomplete.
657         * testsuite/20_util/function/69222.cc: New.
659 2016-01-11  Jonathan Wakely  <jwakely@redhat.com>
661         PR libstdc++/60976
662         * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
663         Define partial specialization.
664         * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
665         destroy members to std::allocator explicit specialization.
667 2016-01-08  Jonathan Wakely  <jwakely@redhat.com>
669         * testsuite/26_numerics/headers/cmath/
670         c99_classification_macros_c++.cc: Rename to ...
671         * testsuite/26_numerics/headers/cmath/
672         c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
673         * testsuite/26_numerics/headers/cmath/
674         c99_classification_macros_c++0x.cc: Rename to ...
675         * testsuite/26_numerics/headers/cmath/
676         c99_classification_macros_c++11.cc: Here.
678         PR libstdc++/69190
679         * include/bits/uses_allocator.h: Add missing include.
681 2016-01-07  Jonathan Wakely  <jwakely@redhat.com>
683         PR libstdc++/69105
684         PR libstdc++/69106
685         PR libstdc++/69114
686         * include/bits/stl_iterator.h (back_insert_iterator,
687         front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
688         * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
689         * include/std/future (__future::base::_State_baseV2::__setter):
690         Likewise.
691         * include/std/scoped_allocator (__outermost): Likewise.
692         * testsuite/20_util/scoped_allocator/69114.cc: New.
693         * testsuite/20_util/uses_allocator/69114.cc: New.
694         * testsuite/30_threads/promise/69106.cc: New.
696 2016-01-06  Jonathan Wakely  <jwakely@redhat.com>
698         PR libstdc++/69092
699         * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
700         Remove _GLIBCXX_NOEXCEPT.
701         testsuite/21_strings/basic_string/cons/char/69092.cc: New.
703         * include/Makefile.am: Adjust.
704         * include/Makefile.in: Regenerate.
705         * include/bits/mutex.h: Rename to bits/std_mutex.h.
706         * include/std/condition_variable: Adjust include.
707         * include/std/mutex: Likewise.
709 2016-01-04  Jakub Jelinek  <jakub@redhat.com>
711         Update copyright years.
713 Copyright (C) 2016 Free Software Foundation, Inc.
715 Copying and distribution of this file, with or without modification,
716 are permitted in any medium without royalty provided the copyright
717 notice and this notice are preserved.