1 2016-04-28 Jonathan Wakely <jwakely@redhat.com>
4 * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
6 * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
8 * include/std/atomic (atomic<_Tp>): Likewise.
9 * include/std/shared_mutex (shared_lock): Likewise.
10 * testsuite/24_iterators/istream_iterator/70766.cc: New test.
11 * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
12 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
13 * testsuite/29_atomics/atomic/70766.cc: New test.
14 * testsuite/30_threads/shared_lock/70766.cc: New test.
16 * include/bits/hashtable_policy.h (__detail::_Insert_base,
17 __detail::_Insert): Improve comments.
19 2016-04-27 Jonathan Wakely <jwakely@redhat.com>
22 * include/std/limits: Update comments about DRs.
23 (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
24 numeric_limits<const volatile _Tp>): Define unconditionally.
26 2016-04-24 Jonathan Wakely <jwakely@redhat.com>
29 * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
30 static counter to return a different path on every call.
32 2016-04-22 Tim Shen <timshen@google.com>
35 * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
36 Fix the match_not_bow and match_not_eow behavior.
37 * testsuite/28_regex/regression.cc: Add testcase.
39 2016-04-20 Jonathan Wakely <jwakely@redhat.com>
42 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
43 __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
45 2016-04-19 Jonathan Wakely <jwakely@redhat.com>
48 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
49 Override endianness bit in mode.
50 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
51 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
52 that little_endian mode is ignored.
53 * testsuite/experimental/filesystem/path/native/string.cc: New test.
56 * src/filesystem/ops.cc (close_fd): New function.
57 (do_copy_file): Set permissions before copying file contents. Check
58 result of closing file descriptors. Don't copy streambuf when file
60 (copy(const path&, const path&, copy_options, error_code&)): Use
61 lstat for source file when copy_symlinks is set.
62 * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
64 * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
65 operator~ operator&=, operator|=, operator^=): Add noexcept to
66 overloaded operators for copy_options, perms and directory_options.
67 * src/filesystem/ops.cc (make_file_type, make_file_status,
68 is_not_found_errno, file_time): Add noexcept.
70 2016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net>
72 * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
74 2016-04-18 Jonathan Wakely <jwakely@redhat.com>
77 * include/bits/random.h: Reword static assertion messages to state
79 * include/bits/random.tcc: Likewise.
80 * include/bits/uniform_int_dist.h: Likewise.
81 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
84 * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
86 * config/cpu/sh/atomicity.h: Fix typo in comment.
89 * include/std/thread (operator<, operator==): Move definitions to
91 * testsuite/30_threads/thread/id/70294.cc: New test.
93 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
94 -Wno-pedantic to dg-options.
95 * testsuite/20_util/align/2.cc: Use type as operand of alignof.
96 * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
98 * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
99 Remove extra semi-colon.
100 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
101 Always supply second argument to static_assert.
102 * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
104 * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
106 * testsuite/26_numerics/complex/literals/values.cc: Likewise.
107 * testsuite/29_atomics/atomic/60695.cc: Likewise.
108 * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
109 alignof when operand is an object not a type.
110 * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
111 * testsuite/decimal/make-decimal.cc: Likewise.
112 * testsuite/experimental/type_traits/value.cc: Always supply second
113 argument to static_assert.
114 * testsuite/util/testsuite_common_types.h: Use __extension__ for
117 * testsuite/experimental/type_erased_allocator/1.cc: Don't include
119 * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
120 * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
121 * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
122 Likewise. Add licence and change to compile-only test.
124 * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
126 * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
128 * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
131 2016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net>
133 * include/bits/specfun.h: Trivial comment misspelling.
135 2016-04-14 Jason Merrill <jason@redhat.com>
137 Revert Jonathan's empty ABI change from yesterday.
139 2016-04-13 Martin Sebor <msebor@redhat.com>
142 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
143 upper bound is positive.
145 2016-04-13 Jonathan Wakely <jwakely@redhat.com>
147 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
148 _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
149 * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
150 of functions taking empty structs by value. Add a template parameter
151 to overloads without hints. Rename overloads with hints to
153 (_Hashtable::_M_erase(true_type, const_iterator),
154 _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
155 by reordering parameters.
156 * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
157 _M_emplace_hint instead of _M_emplace.
158 * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
159 shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
160 * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
161 __shared_ptr): Likewise.
162 * include/bits/stl_algo.h (replace_if): Likewise.
163 * include/bits/stl_pair.h (piecewise_construct_t,
164 piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
165 * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
166 __uses_alloc0): Likewise.
167 * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
168 * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
169 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
170 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
171 * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
172 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
173 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
175 2016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net>
177 Document C++17/TR29124 C++ Special Math Functions.
178 * include/bits/specfun.h: Add Doxygen markup.
180 2016-04-07 Jonathan Wakely <jwakely@redhat.com>
182 * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
184 2016-04-06 Eric Botcazou <ebotcazou@adacore.com>
186 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
187 * src/Makefile.in: Regenerate.
189 2016-04-05 Jonathan Wakely <jwakely@redhat.com>
192 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
193 __atomic_fetch_add for bool.
194 * configure: Regenerate.
196 * testsuite/30_threads/thread/70503.cc: Require -static to work.
199 * src/c++11/thread.cc (execute_native_thread_routine,
200 execute_native_thread_routine_compat): Give internal linkage.
201 * testsuite/30_threads/thread/70503.cc: New test.
203 2016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com>
206 * include/bits/stl_pair.h (_ConstructiblePair,
207 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
208 _ImplicitlyMoveConvertiblePair): Add shortcut conditions
210 * testsuite/20_util/pair/70437.cc: New.
212 2016-03-24 Jonathan Wakely <jwakely@redhat.com>
215 * config/abi/pre/gnu.ver: Add new symbol.
216 * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
217 * testsuite/18_support/free_eh_pool.cc: New test.
219 2016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
221 * include/Makefile.am (install-freestanding-headers): Add
222 concept_check.h and move.h to the installed headers.
223 * include/Makefile.in: Regenerated.
224 * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
225 freestanding implementations.
226 * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
227 that this macro has no effect for freestanding implementations.
228 * doc/html/manual/using_macros.html: Likewise.
230 2016-02-24 Jonathan Wakely <jwakely@redhat.com>
233 * include/experimental/tuple (__apply_impl): Qualify get and forward.
235 2016-02-23 Jonathan Wakely <jwakely@redhat.com>
237 * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
238 * doc/html/*: Regenerate.
241 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
242 exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
243 llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
244 nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
245 trunc) [__cplusplus >= 201103L]: Import from namespace std.
246 (fabs) [__cplusplus < 201103L]: Import from namespace std.
247 * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
249 * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
250 namespace before including TR1 headers.
251 * testsuite/tr1/headers/c++200x/math.cc: New test.
253 2016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
256 * include/c_global/cstdarg: Undefine __need___va_list.
257 * include/c_global/cstddef: Undefine all kinds of __need_*.
259 2016-02-16 Tim Shen <timshen@google.com>
262 * include/bits/regex_scanner.h: Add different special character
263 sets for grep and egrep regex.
264 * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
265 * testsuite/28_regex/regression.cc: Add new testcase.
267 2016-02-08 Jonathan Wakely <jwakely@redhat.com>
269 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
270 added 'constexpr' in previous commit.
271 * configure: Regenerate.
274 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
275 checks for all targets except *-*-solaris2.* and ensure we find the
276 libc math.h header not our own.
277 * configure: Regenerate.
279 2016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com>
281 * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
282 New file. Copied over from s390-linux-gnu.
284 2016-02-04 Jonathan Wakely <jwakely@redhat.com>
287 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
288 with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
289 * config.h.in: Regenerate.
290 * configure: Regenerate.
291 * testsuite/21_strings/c_strings/char/69626.cc: New.
293 * doc/html/index.html: Regenerate.
295 * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
296 * doc/xml/manual/spine.xml: Update copyright years and author blurb.
297 * doc/html/*: Regenerate.
299 2016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
302 * include/c_compatibility/math.h: Move header guards.
303 * include/c_compatibility/stdlib.h: Likewise.
305 2016-01-29 Jonathan Wakely <jwakely@redhat.com>
308 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
310 2016-01-28 John David Anglin <danglin@gcc.gnu.org>
313 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
314 isinf and isnan functions into two independent checks. Check on hpux.
315 * config.h.in: Regenerate.
316 * configure: Regenerate.
317 * include/c_global/cmath (isinf(double), isnan(double)): Use
318 _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
321 2016-01-27 Jakub Jelinek <jakub@redhat.com>
323 * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
325 2016-01-27 Jonathan Wakely <jwakely@redhat.com>
328 * testsuite/ext/special_functions/hyperg/check_value.cc: Use
329 -ffp-contract=off, and -ffloat-store to disable excess precision.
330 * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
333 2016-01-26 Jonathan Wakely <jwakely@redhat.com>
336 * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
337 random_access_iterator_tag>): Check is_move_assignable when moving.
338 (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
340 * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
341 * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
342 * testsuite/25_algorithms/move/69478.cc: New.
343 * testsuite/25_algorithms/move_backward/69478.cc: new.
345 2016-01-26 Andris Pavenis <andris.pavenis@iki.fi>
347 * include/c_compatibility/stdlib.h: Include wide character related
348 definitions only when they are available in cstdlib.
350 2016-01-25 Jonathan Wakely <jwakely@redhat.com>
353 * include/Makefile.am: Add new header.
354 * include/Makefile.in: Regenerate.
355 * include/bits/random.h (uniform_int_distribution): Move to
356 bits/uniform_int_dist.h.
357 * include/bits/random.tcc (uniform_int_distribution::operator(),
358 uniform_int_distribution::__generate_impl): Likewise.
359 * include/bits/uniform_int_dist.h: New header.
360 * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
361 <bits/uniform_int_dist.h> instead of <random>.
362 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
363 move_iterators/1.cc: Include correct header for uninitialized_copy.
364 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
365 move_iterators/1.cc: Likewise.
366 * testsuite/25_algorithms/nth_element/58800.cc: Include correct
368 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
370 2016-01-23 John David Anglin <danglin@gcc.gnu.org>
373 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
375 2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
377 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
378 * include/c_compatibility/math.h: Import the TR29124 functions
379 into the global namespace.
380 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
381 xfail and make compile-only.
382 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
383 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
384 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
385 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
386 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
387 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
388 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
389 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
390 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
391 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
392 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
393 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
394 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
395 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
396 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
397 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
398 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
399 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
400 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
401 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
403 2016-01-22 Jonathan Wakely <jwakely@redhat.com>
406 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
407 define result_type for types which can be safely used with valarrays.
408 * testsuite/26_numerics/valarray/69116.cc: New.
411 * config/os/gnu-linux/os_defines.h: Define
412 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
413 * include/c_global/cmath (isinf, isnan): Check it.
414 * doc/xml/manual/internals.xml: Document it.
415 * doc/html/*: Regenerate.
417 2016-01-21 Jonathan Wakely <jwakely@redhat.com>
420 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
421 * include/ext/type_traits.h: Likewise.
422 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
423 for presence of C headers.
424 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
425 dg-error line number.
426 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
427 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
428 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
430 2016-01-20 Torvald Riegel <triegel@redhat.com>
433 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
435 2016-01-20 Jonathan Wakely <jwakely@redhat.com>
438 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
439 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
440 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
441 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
442 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
443 Add using declarations.
444 * testsuite/26_numerics/headers/cmath/60401.cc: New.
447 * include/c_global/ccomplex: Ensure C++ language linkage.
448 * include/c_global/cmath: Likewise.
449 * include/c_global/cstdlib: Likewise.
450 * include/c_global/ctgmath: Likewise.
451 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
453 2016-01-19 Jonathan Wakely <jwakely@redhat.com>
457 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
458 --enable-cheaders=c_global configs.
459 * include/Makefile.in: Regenerate.
460 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
461 test and allow inclusion from C files.
462 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
463 (at_quick_exit, quick_exit): Add using directives.
464 * include/c_global/cmath: Use #include_next for math.h.
465 * include/c_global/cstdlib: Use #include_next for stdlib.h.
466 * testsuite/26_numerics/headers/cmath/14608.cc: New.
467 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
468 Remove xfail for most targets.
469 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
471 2016-01-18 Torvald Riegel <triegel@redhat.com>
473 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
474 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
475 and move after its definition.
476 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
477 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
478 __GXX_WEAK__, and only provide transactional clones if
479 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
482 2016-01-18 Jonathan Wakely <jwakely@redhat.com>
485 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
488 * include/std/functional (_Function_base::_M_not_empty_function):
489 Change overloads for pointers to take arguments by value.
490 * testsuite/20_util/function/cons/57465.cc: Add tests for
491 pointer-to-member cases.
494 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
495 Use macros for exception handling and fix unused parameter warning.
497 2016-01-17 John David Anglin <danglin@gcc.gnu.org>
500 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
502 2016-01-17 Torvald Riegel <triegel@redhat.com>
504 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
506 2016-01-16 H.J. Lu <hongjiu.lu@intel.com>
508 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
511 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
514 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
515 static assertion that type is constructible from the arguments.
516 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
517 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
518 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
521 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
522 and isnan on AIX. Quote variables.
523 * configure: Regenerate.
525 2016-01-15 Torvald Riegel <triegel@redhat.com>
527 * include/bits/basic_string.h (basic_string): Declare friends.
528 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
529 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
530 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
531 length_error, out_of_range, runtime_error, range_error,
532 underflow_error, overflow_error): Declare members as transaction-safe.
533 (logic_error, runtime_error): Declare friend functions.
534 * libsupc++/exception (exception, bad_exception): Declare members as
536 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
537 transaction-safe members of exceptions and helper functions.
538 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
539 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
540 (CXXABI_1.3.10): New.
541 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
542 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
543 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
544 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
545 * include/Makefile.in: Regenerate.
546 * config.h.in: Regenerate.
547 * configure: Regenerate.
548 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
550 2016-01-15 Steve Ellcey <sellcey@imgtec.com>
552 * include/ext/random.tcc: Use __builtin_isfinite instead of
555 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
557 * include/bits/std_mutex.h: Fix Doxygen @file name.
559 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
560 Jonathan Wakely <jwakely@redhat.com>
561 Florian Goth <CaptainSifff@gmx.de>
563 Implement TR29124 C++ special Math Functions.
564 * include/Makefile.am: Add new headers.
565 * include/Makefile.in: Regenerate.
566 * include/bits/specfun.h: New.
567 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
568 * include/tr1/bessel_function.tcc: Ditto.
569 * include/tr1/beta_function.tcc: Ditto.
570 * include/tr1/cmath: Ditto.
571 * include/tr1/ell_integral.tcc: Ditto.
572 * include/tr1/exp_integral.tcc: Ditto.
573 * include/tr1/gamma.tcc: Ditto.
574 * include/tr1/hypergeometric.tcc: Ditto.
575 * include/tr1/legendre_function.tcc: Ditto.
576 * include/tr1/modified_bessel_func.tcc: Ditto.
577 * include/tr1/poly_hermite.tcc: Ditto.
578 * include/tr1/poly_laguerre.tcc: Ditto.
579 * include/tr1/riemann_zeta.tcc: Ditto.
580 * include/tr1/special_function_util.h: Ditto.
581 * testsuite/ext/special_functions/conf_hyperg: New.
582 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
583 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
584 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
585 * testsuite/ext/special_functions/hyperg: New.
586 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
587 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
588 * testsuite/ext/special_functions/hyperg/compile.cc: New.
589 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
590 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
591 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
592 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
593 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
594 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
595 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
596 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
597 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
598 * testsuite/special_functions/03_beta/check_nan.cc: New.
599 * testsuite/special_functions/03_beta/check_value.cc: New.
600 * testsuite/special_functions/03_beta/compile.cc: New.
601 * testsuite/special_functions/03_beta/compile_2.cc: New.
602 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
603 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
604 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
605 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
606 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
607 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
608 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
609 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
610 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
611 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
612 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
613 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
614 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
615 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
616 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
617 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
618 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
619 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
620 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
621 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
622 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
623 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
624 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
625 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
626 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
627 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
628 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
629 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
630 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
631 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
632 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
633 * testsuite/special_functions/11_ellint_1/compile.cc: New.
634 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
635 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
636 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
637 * testsuite/special_functions/12_ellint_2/compile.cc: New.
638 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
639 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
640 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
641 * testsuite/special_functions/13_ellint_3/compile.cc: New.
642 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
643 * testsuite/special_functions/14_expint/check_nan.cc: New.
644 * testsuite/special_functions/14_expint/check_value.cc: New.
645 * testsuite/special_functions/14_expint/compile.cc: New.
646 * testsuite/special_functions/14_expint/compile_2.cc: New.
647 * testsuite/special_functions/15_hermite/check_nan.cc: New.
648 * testsuite/special_functions/15_hermite/check_value.cc: New.
649 * testsuite/special_functions/15_hermite/compile.cc: New.
650 * testsuite/special_functions/15_hermite/compile_2.cc: New.
651 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
652 * testsuite/special_functions/16_laguerre/check_value.cc: New.
653 * testsuite/special_functions/16_laguerre/compile.cc: New.
654 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
655 * testsuite/special_functions/17_legendre/check_nan.cc: New.
656 * testsuite/special_functions/17_legendre/check_value.cc: New.
657 * testsuite/special_functions/17_legendre/compile.cc: New.
658 * testsuite/special_functions/17_legendre/compile_2.cc: New.
659 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
660 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
661 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
662 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
663 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
664 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
665 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
666 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
667 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
668 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
669 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
670 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
671 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
672 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
673 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
674 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
675 * testsuite/util/specfun_testcase.h: New.
676 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
677 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
678 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
679 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
680 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
681 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
682 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
684 2016-01-13 Jonathan Wakely <jwakely@redhat.com>
687 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
689 * config.h.in: Regenerate.
690 * configure: Regenerate.
691 * include/c_global/cmath (isinf(double), isnan(double))
692 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
693 * testsuite/26_numerics/headers/cmath/48891.cc: New.
695 2016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
698 * configure.host (abi_baseline_pair): Use separate baseline for
699 Solaris 11+ and Solaris 10 with gld.
700 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
701 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
702 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
704 2016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
707 * include/std/type_traits: Following N4511, reimplement __is_swappable
708 and __is_nothrow_swappable. Move __is_swappable to namespace std,
709 adjust callers. Use __is_nothrow_swappable in swap.
710 * include/bits/move.h: Use __is_nothrow_swappable in swap.
711 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
712 __is_swappable related tests.
713 * testsuite/20_util/is_swappable/value.cc: New.
714 * testsuite/20_util/is_swappable/requirements/
715 explicit_instantiation.cc: New.
716 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
717 * testsuite/25_algorithms/swap/68877.cc: New.
719 2016-01-12 Jonathan Wakely <jwakely@redhat.com>
721 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
725 * include/std/functional (function::_Invoke): Remove, use result_of.
726 (function::_Callable): Replace alias template with class template
727 and use partial specialization instead of _NotSelf alias template.
728 (function(_Functor)): Add "not self" constraint so that _Callable is
729 not used while type is incomplete.
730 * testsuite/20_util/function/69222.cc: New.
732 2016-01-11 Jonathan Wakely <jwakely@redhat.com>
735 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
736 Define partial specialization.
737 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
738 destroy members to std::allocator explicit specialization.
740 2016-01-08 Jonathan Wakely <jwakely@redhat.com>
742 * testsuite/26_numerics/headers/cmath/
743 c99_classification_macros_c++.cc: Rename to ...
744 * testsuite/26_numerics/headers/cmath/
745 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
746 * testsuite/26_numerics/headers/cmath/
747 c99_classification_macros_c++0x.cc: Rename to ...
748 * testsuite/26_numerics/headers/cmath/
749 c99_classification_macros_c++11.cc: Here.
752 * include/bits/uses_allocator.h: Add missing include.
754 2016-01-07 Jonathan Wakely <jwakely@redhat.com>
759 * include/bits/stl_iterator.h (back_insert_iterator,
760 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
761 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
762 * include/std/future (__future::base::_State_baseV2::__setter):
764 * include/std/scoped_allocator (__outermost): Likewise.
765 * testsuite/20_util/scoped_allocator/69114.cc: New.
766 * testsuite/20_util/uses_allocator/69114.cc: New.
767 * testsuite/30_threads/promise/69106.cc: New.
769 2016-01-06 Jonathan Wakely <jwakely@redhat.com>
772 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
773 Remove _GLIBCXX_NOEXCEPT.
774 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
776 * include/Makefile.am: Adjust.
777 * include/Makefile.in: Regenerate.
778 * include/bits/mutex.h: Rename to bits/std_mutex.h.
779 * include/std/condition_variable: Adjust include.
780 * include/std/mutex: Likewise.
782 2016-01-04 Jakub Jelinek <jakub@redhat.com>
784 Update copyright years.
786 Copyright (C) 2016 Free Software Foundation, Inc.
788 Copying and distribution of this file, with or without modification,
789 are permitted in any medium without royalty provided the copyright
790 notice and this notice are preserved.