PR libstdc++/69294 Check for isinf and isnan on AIX
[gcc.git] / libstdc++-v3 / ChangeLog
1 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
2
3 PR libstdc++/69294
4 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
5 and isnan on AIX. Quote variables.
6 * configure: Regenerate.
7
8 2016-01-15 Torvald Riegel <triegel@redhat.com>
9
10 * include/bits/basic_string.h (basic_string): Declare friends.
11 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
12 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
13 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
14 length_error, out_of_range, runtime_error, range_error,
15 underflow_error, overflow_error): Declare members as transaction-safe.
16 (logic_error, runtime_error): Declare friend functions.
17 * libsupc++/exception (exception, bad_exception): Declare members as
18 transaction-safe.
19 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
20 transaction-safe members of exceptions and helper functions.
21 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
22 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
23 (CXXABI_1.3.10): New.
24 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
25 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
26 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
27 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
28 * include/Makefile.in: Regenerate.
29 * config.h.in: Regenerate.
30 * configure: Regenerate.
31 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
32
33 2016-01-15 Steve Ellcey <sellcey@imgtec.com>
34
35 * include/ext/random.tcc: Use __builtin_isfinite instead of
36 std::isfinite.
37
38 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
39
40 * include/bits/std_mutex.h: Fix Doxygen @file name.
41
42 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
43 Jonathan Wakely <jwakely@redhat.com>
44 Florian Goth <CaptainSifff@gmx.de>
45
46 Implement TR29124 C++ special Math Functions.
47 * include/Makefile.am: Add new headers.
48 * include/Makefile.in: Regenerate.
49 * include/bits/specfun.h: New.
50 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
51 * include/tr1/bessel_function.tcc: Ditto.
52 * include/tr1/beta_function.tcc: Ditto.
53 * include/tr1/cmath: Ditto.
54 * include/tr1/ell_integral.tcc: Ditto.
55 * include/tr1/exp_integral.tcc: Ditto.
56 * include/tr1/gamma.tcc: Ditto.
57 * include/tr1/hypergeometric.tcc: Ditto.
58 * include/tr1/legendre_function.tcc: Ditto.
59 * include/tr1/modified_bessel_func.tcc: Ditto.
60 * include/tr1/poly_hermite.tcc: Ditto.
61 * include/tr1/poly_laguerre.tcc: Ditto.
62 * include/tr1/riemann_zeta.tcc: Ditto.
63 * include/tr1/special_function_util.h: Ditto.
64 * testsuite/ext/special_functions/conf_hyperg: New.
65 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
66 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
67 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
68 * testsuite/ext/special_functions/hyperg: New.
69 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
70 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
71 * testsuite/ext/special_functions/hyperg/compile.cc: New.
72 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
73 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
74 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
75 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
76 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
77 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
78 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
79 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
80 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
81 * testsuite/special_functions/03_beta/check_nan.cc: New.
82 * testsuite/special_functions/03_beta/check_value.cc: New.
83 * testsuite/special_functions/03_beta/compile.cc: New.
84 * testsuite/special_functions/03_beta/compile_2.cc: New.
85 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
86 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
87 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
88 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
89 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
90 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
91 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
92 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
93 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
94 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
95 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
96 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
97 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
98 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
99 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
100 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
101 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
102 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
103 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
104 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
105 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
106 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
107 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
108 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
109 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
110 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
111 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
112 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
113 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
114 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
115 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
116 * testsuite/special_functions/11_ellint_1/compile.cc: New.
117 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
118 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
119 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
120 * testsuite/special_functions/12_ellint_2/compile.cc: New.
121 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
122 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
123 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
124 * testsuite/special_functions/13_ellint_3/compile.cc: New.
125 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
126 * testsuite/special_functions/14_expint/check_nan.cc: New.
127 * testsuite/special_functions/14_expint/check_value.cc: New.
128 * testsuite/special_functions/14_expint/compile.cc: New.
129 * testsuite/special_functions/14_expint/compile_2.cc: New.
130 * testsuite/special_functions/15_hermite/check_nan.cc: New.
131 * testsuite/special_functions/15_hermite/check_value.cc: New.
132 * testsuite/special_functions/15_hermite/compile.cc: New.
133 * testsuite/special_functions/15_hermite/compile_2.cc: New.
134 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
135 * testsuite/special_functions/16_laguerre/check_value.cc: New.
136 * testsuite/special_functions/16_laguerre/compile.cc: New.
137 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
138 * testsuite/special_functions/17_legendre/check_nan.cc: New.
139 * testsuite/special_functions/17_legendre/check_value.cc: New.
140 * testsuite/special_functions/17_legendre/compile.cc: New.
141 * testsuite/special_functions/17_legendre/compile_2.cc: New.
142 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
143 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
144 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
145 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
146 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
147 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
148 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
149 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
150 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
151 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
152 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
153 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
154 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
155 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
156 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
157 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
158 * testsuite/util/specfun_testcase.h: New.
159 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
160 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
161 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
162 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
163 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
164 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
165 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
166
167 2016-01-13 Jonathan Wakely <jwakely@redhat.com>
168
169 PR libstdc++/48891
170 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
171 and isnan functions.
172 * config.h.in: Regenerate.
173 * configure: Regenerate.
174 * include/c_global/cmath (isinf(double), isnan(double))
175 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
176 * testsuite/26_numerics/headers/cmath/48891.cc: New.
177
178 2016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
179
180 PR libstdc++/66006
181 * configure.host (abi_baseline_pair): Use separate baseline for
182 Solaris 11+ and Solaris 10 with gld.
183 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
184 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
185 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
186
187 2016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
188
189 PR libstdc++/68877
190 * include/std/type_traits: Following N4511, reimplement __is_swappable
191 and __is_nothrow_swappable. Move __is_swappable to namespace std,
192 adjust callers. Use __is_nothrow_swappable in swap.
193 * include/bits/move.h: Use __is_nothrow_swappable in swap.
194 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
195 __is_swappable related tests.
196 * testsuite/20_util/is_swappable/value.cc: New.
197 * testsuite/20_util/is_swappable/requirements/
198 explicit_instantiation.cc: New.
199 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
200 * testsuite/25_algorithms/swap/68877.cc: New.
201
202 2016-01-12 Jonathan Wakely <jwakely@redhat.com>
203
204 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
205
206 PR libstdc++/69005
207 PR libstdc++/69222
208 * include/std/functional (function::_Invoke): Remove, use result_of.
209 (function::_Callable): Replace alias template with class template
210 and use partial specialization instead of _NotSelf alias template.
211 (function(_Functor)): Add "not self" constraint so that _Callable is
212 not used while type is incomplete.
213 * testsuite/20_util/function/69222.cc: New.
214
215 2016-01-11 Jonathan Wakely <jwakely@redhat.com>
216
217 PR libstdc++/60976
218 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
219 Define partial specialization.
220 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
221 destroy members to std::allocator explicit specialization.
222
223 2016-01-08 Jonathan Wakely <jwakely@redhat.com>
224
225 * testsuite/26_numerics/headers/cmath/
226 c99_classification_macros_c++.cc: Rename to ...
227 * testsuite/26_numerics/headers/cmath/
228 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
229 * testsuite/26_numerics/headers/cmath/
230 c99_classification_macros_c++0x.cc: Rename to ...
231 * testsuite/26_numerics/headers/cmath/
232 c99_classification_macros_c++11.cc: Here.
233
234 PR libstdc++/69190
235 * include/bits/uses_allocator.h: Add missing include.
236
237 2016-01-07 Jonathan Wakely <jwakely@redhat.com>
238
239 PR libstdc++/69105
240 PR libstdc++/69106
241 PR libstdc++/69114
242 * include/bits/stl_iterator.h (back_insert_iterator,
243 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
244 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
245 * include/std/future (__future::base::_State_baseV2::__setter):
246 Likewise.
247 * include/std/scoped_allocator (__outermost): Likewise.
248 * testsuite/20_util/scoped_allocator/69114.cc: New.
249 * testsuite/20_util/uses_allocator/69114.cc: New.
250 * testsuite/30_threads/promise/69106.cc: New.
251
252 2016-01-06 Jonathan Wakely <jwakely@redhat.com>
253
254 PR libstdc++/69092
255 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
256 Remove _GLIBCXX_NOEXCEPT.
257 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
258
259 * include/Makefile.am: Adjust.
260 * include/Makefile.in: Regenerate.
261 * include/bits/mutex.h: Rename to bits/std_mutex.h.
262 * include/std/condition_variable: Adjust include.
263 * include/std/mutex: Likewise.
264
265 2016-01-04 Jakub Jelinek <jakub@redhat.com>
266
267 Update copyright years.
268 \f
269 Copyright (C) 2016 Free Software Foundation, Inc.
270
271 Copying and distribution of this file, with or without modification,
272 are permitted in any medium without royalty provided the copyright
273 notice and this notice are preserved.