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