1 2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
3 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
4 * include/c_compatibility/math.h: Import the TR29124 functions
5 into the global namespace.
6 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
7 xfail and make compile-only.
8 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
9 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
10 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
11 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
12 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
13 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
14 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
15 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
16 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
17 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
18 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
19 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
20 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
21 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
22 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
23 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
24 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
25 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
26 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
27 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
29 2016-01-22 Jonathan Wakely <jwakely@redhat.com>
32 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
33 define result_type for types which can be safely used with valarrays.
34 * testsuite/26_numerics/valarray/69116.cc: New.
37 * config/os/gnu-linux/os_defines.h: Define
38 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
39 * include/c_global/cmath (isinf, isnan): Check it.
40 * doc/xml/manual/internals.xml: Document it.
41 * doc/html/*: Regenerate.
43 2016-01-21 Jonathan Wakely <jwakely@redhat.com>
46 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
47 * include/ext/type_traits.h: Likewise.
48 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
49 for presence of C headers.
50 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
52 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
53 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
54 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
56 2016-01-20 Torvald Riegel <triegel@redhat.com>
59 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
61 2016-01-20 Jonathan Wakely <jwakely@redhat.com>
64 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
65 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
66 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
67 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
68 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
69 Add using declarations.
70 * testsuite/26_numerics/headers/cmath/60401.cc: New.
73 * include/c_global/ccomplex: Ensure C++ language linkage.
74 * include/c_global/cmath: Likewise.
75 * include/c_global/cstdlib: Likewise.
76 * include/c_global/ctgmath: Likewise.
77 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
79 2016-01-19 Jonathan Wakely <jwakely@redhat.com>
83 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
84 --enable-cheaders=c_global configs.
85 * include/Makefile.in: Regenerate.
86 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
87 test and allow inclusion from C files.
88 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
89 (at_quick_exit, quick_exit): Add using directives.
90 * include/c_global/cmath: Use #include_next for math.h.
91 * include/c_global/cstdlib: Use #include_next for stdlib.h.
92 * testsuite/26_numerics/headers/cmath/14608.cc: New.
93 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
94 Remove xfail for most targets.
95 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
97 2016-01-18 Torvald Riegel <triegel@redhat.com>
99 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
100 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
101 and move after its definition.
102 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
103 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
104 __GXX_WEAK__, and only provide transactional clones if
105 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
108 2016-01-18 Jonathan Wakely <jwakely@redhat.com>
111 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
114 * include/std/functional (_Function_base::_M_not_empty_function):
115 Change overloads for pointers to take arguments by value.
116 * testsuite/20_util/function/cons/57465.cc: Add tests for
117 pointer-to-member cases.
120 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
121 Use macros for exception handling and fix unused parameter warning.
123 2016-01-17 John David Anglin <danglin@gcc.gnu.org>
126 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
128 2016-01-17 Torvald Riegel <triegel@redhat.com>
130 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
132 2016-01-16 H.J. Lu <hongjiu.lu@intel.com>
134 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
137 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
140 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
141 static assertion that type is constructible from the arguments.
142 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
143 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
144 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
147 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
148 and isnan on AIX. Quote variables.
149 * configure: Regenerate.
151 2016-01-15 Torvald Riegel <triegel@redhat.com>
153 * include/bits/basic_string.h (basic_string): Declare friends.
154 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
155 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
156 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
157 length_error, out_of_range, runtime_error, range_error,
158 underflow_error, overflow_error): Declare members as transaction-safe.
159 (logic_error, runtime_error): Declare friend functions.
160 * libsupc++/exception (exception, bad_exception): Declare members as
162 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
163 transaction-safe members of exceptions and helper functions.
164 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
165 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
166 (CXXABI_1.3.10): New.
167 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
168 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
169 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
170 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
171 * include/Makefile.in: Regenerate.
172 * config.h.in: Regenerate.
173 * configure: Regenerate.
174 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
176 2016-01-15 Steve Ellcey <sellcey@imgtec.com>
178 * include/ext/random.tcc: Use __builtin_isfinite instead of
181 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
183 * include/bits/std_mutex.h: Fix Doxygen @file name.
185 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
186 Jonathan Wakely <jwakely@redhat.com>
187 Florian Goth <CaptainSifff@gmx.de>
189 Implement TR29124 C++ special Math Functions.
190 * include/Makefile.am: Add new headers.
191 * include/Makefile.in: Regenerate.
192 * include/bits/specfun.h: New.
193 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
194 * include/tr1/bessel_function.tcc: Ditto.
195 * include/tr1/beta_function.tcc: Ditto.
196 * include/tr1/cmath: Ditto.
197 * include/tr1/ell_integral.tcc: Ditto.
198 * include/tr1/exp_integral.tcc: Ditto.
199 * include/tr1/gamma.tcc: Ditto.
200 * include/tr1/hypergeometric.tcc: Ditto.
201 * include/tr1/legendre_function.tcc: Ditto.
202 * include/tr1/modified_bessel_func.tcc: Ditto.
203 * include/tr1/poly_hermite.tcc: Ditto.
204 * include/tr1/poly_laguerre.tcc: Ditto.
205 * include/tr1/riemann_zeta.tcc: Ditto.
206 * include/tr1/special_function_util.h: Ditto.
207 * testsuite/ext/special_functions/conf_hyperg: New.
208 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
209 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
210 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
211 * testsuite/ext/special_functions/hyperg: New.
212 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
213 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
214 * testsuite/ext/special_functions/hyperg/compile.cc: New.
215 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
216 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
217 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
218 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
219 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
220 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
221 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
222 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
223 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
224 * testsuite/special_functions/03_beta/check_nan.cc: New.
225 * testsuite/special_functions/03_beta/check_value.cc: New.
226 * testsuite/special_functions/03_beta/compile.cc: New.
227 * testsuite/special_functions/03_beta/compile_2.cc: New.
228 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
229 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
230 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
231 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
232 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
233 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
234 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
235 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
236 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
237 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
238 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
239 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
240 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
241 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
242 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
243 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
244 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
245 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
246 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
247 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
248 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
249 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
250 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
251 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
252 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
253 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
254 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
255 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
256 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
257 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
258 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
259 * testsuite/special_functions/11_ellint_1/compile.cc: New.
260 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
261 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
262 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
263 * testsuite/special_functions/12_ellint_2/compile.cc: New.
264 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
265 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
266 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
267 * testsuite/special_functions/13_ellint_3/compile.cc: New.
268 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
269 * testsuite/special_functions/14_expint/check_nan.cc: New.
270 * testsuite/special_functions/14_expint/check_value.cc: New.
271 * testsuite/special_functions/14_expint/compile.cc: New.
272 * testsuite/special_functions/14_expint/compile_2.cc: New.
273 * testsuite/special_functions/15_hermite/check_nan.cc: New.
274 * testsuite/special_functions/15_hermite/check_value.cc: New.
275 * testsuite/special_functions/15_hermite/compile.cc: New.
276 * testsuite/special_functions/15_hermite/compile_2.cc: New.
277 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
278 * testsuite/special_functions/16_laguerre/check_value.cc: New.
279 * testsuite/special_functions/16_laguerre/compile.cc: New.
280 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
281 * testsuite/special_functions/17_legendre/check_nan.cc: New.
282 * testsuite/special_functions/17_legendre/check_value.cc: New.
283 * testsuite/special_functions/17_legendre/compile.cc: New.
284 * testsuite/special_functions/17_legendre/compile_2.cc: New.
285 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
286 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
287 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
288 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
289 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
290 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
291 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
292 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
293 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
294 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
295 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
296 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
297 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
298 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
299 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
300 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
301 * testsuite/util/specfun_testcase.h: New.
302 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
303 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
304 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
305 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
306 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
307 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
308 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
310 2016-01-13 Jonathan Wakely <jwakely@redhat.com>
313 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
315 * config.h.in: Regenerate.
316 * configure: Regenerate.
317 * include/c_global/cmath (isinf(double), isnan(double))
318 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
319 * testsuite/26_numerics/headers/cmath/48891.cc: New.
321 2016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
324 * configure.host (abi_baseline_pair): Use separate baseline for
325 Solaris 11+ and Solaris 10 with gld.
326 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
327 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
328 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
330 2016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
333 * include/std/type_traits: Following N4511, reimplement __is_swappable
334 and __is_nothrow_swappable. Move __is_swappable to namespace std,
335 adjust callers. Use __is_nothrow_swappable in swap.
336 * include/bits/move.h: Use __is_nothrow_swappable in swap.
337 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
338 __is_swappable related tests.
339 * testsuite/20_util/is_swappable/value.cc: New.
340 * testsuite/20_util/is_swappable/requirements/
341 explicit_instantiation.cc: New.
342 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
343 * testsuite/25_algorithms/swap/68877.cc: New.
345 2016-01-12 Jonathan Wakely <jwakely@redhat.com>
347 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
351 * include/std/functional (function::_Invoke): Remove, use result_of.
352 (function::_Callable): Replace alias template with class template
353 and use partial specialization instead of _NotSelf alias template.
354 (function(_Functor)): Add "not self" constraint so that _Callable is
355 not used while type is incomplete.
356 * testsuite/20_util/function/69222.cc: New.
358 2016-01-11 Jonathan Wakely <jwakely@redhat.com>
361 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
362 Define partial specialization.
363 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
364 destroy members to std::allocator explicit specialization.
366 2016-01-08 Jonathan Wakely <jwakely@redhat.com>
368 * testsuite/26_numerics/headers/cmath/
369 c99_classification_macros_c++.cc: Rename to ...
370 * testsuite/26_numerics/headers/cmath/
371 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
372 * testsuite/26_numerics/headers/cmath/
373 c99_classification_macros_c++0x.cc: Rename to ...
374 * testsuite/26_numerics/headers/cmath/
375 c99_classification_macros_c++11.cc: Here.
378 * include/bits/uses_allocator.h: Add missing include.
380 2016-01-07 Jonathan Wakely <jwakely@redhat.com>
385 * include/bits/stl_iterator.h (back_insert_iterator,
386 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
387 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
388 * include/std/future (__future::base::_State_baseV2::__setter):
390 * include/std/scoped_allocator (__outermost): Likewise.
391 * testsuite/20_util/scoped_allocator/69114.cc: New.
392 * testsuite/20_util/uses_allocator/69114.cc: New.
393 * testsuite/30_threads/promise/69106.cc: New.
395 2016-01-06 Jonathan Wakely <jwakely@redhat.com>
398 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
399 Remove _GLIBCXX_NOEXCEPT.
400 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
402 * include/Makefile.am: Adjust.
403 * include/Makefile.in: Regenerate.
404 * include/bits/mutex.h: Rename to bits/std_mutex.h.
405 * include/std/condition_variable: Adjust include.
406 * include/std/mutex: Likewise.
408 2016-01-04 Jakub Jelinek <jakub@redhat.com>
410 Update copyright years.
412 Copyright (C) 2016 Free Software Foundation, Inc.
414 Copying and distribution of this file, with or without modification,
415 are permitted in any medium without royalty provided the copyright
416 notice and this notice are preserved.