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