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