1 2016-05-10 Jonathan Wakely <jwakely@redhat.com>
3 * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
7 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
9 (directory_iterator::operator++(int)): Return proxy.
10 (recursive_directory_iterator::operator++(int)): Likewise.
11 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
13 * testsuite/experimental/filesystem/iterators/
14 recursive_directory_iterator.cc: Likewise.
16 2016-05-09 Jonathan Wakely <jwakely@redhat.com>
19 * testsuite/experimental/filesystem/iterators/
20 recursive_directory_iterator.cc: Fix test02 to not call member
21 functions on invalid iterator, and use VERIFY not assert.
23 2016-05-09 Ville Voutilainen <ville.voutilainen@gmail.com>
25 Avoid endless run-time recursion for copying single-element
26 tuples where the element type is by-value constructible
28 * include/std/tuple (_NotSameTuple): New.
29 * include/std/tuple (tuple(_UElements&&...): Use it.
30 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
32 2016-05-09 Jonathan Wakely <jwakely@redhat.com>
35 * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
36 Initialize scalar member variables in default constructor.
37 * testsuite/experimental/filesystem/iterators/
38 recursive_directory_iterator.cc: Test default construction.
40 2016-05-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
42 * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
44 2016-05-05 Jonathan Wakely <jwakely@redhat.com>
46 * testsuite/experimental/filesystem/path/native/string.cc: Add
47 dg-require-filesystem-ts directive.
49 2016-05-04 Jonathan Wakely <jwakely@redhat.com>
52 * include/experimental/memory_resource
53 (__resource_adaptor_imp::do_allocate): Do not default-construct
55 (__resource_adaptor_imp::do_deallocate): Likewise. Use
56 allocator_traits to get pointer type.
57 (__null_memory_resource::do_allocate): Remove unused parameters.
58 (__null_memory_resource::do_deallocate): Likewise.
59 (__null_memory_resource::do_is_equal): Likewise. Add return statement.
60 * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
61 * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
63 * testsuite/experimental/memory_resource/1.cc: Here.
64 * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
65 * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
67 2016-04-29 Chris Gregory <czipperz@gmail.com>
69 * config/*: Remove trailing whitespace.
71 * testsuite/tr1/*: Likewise.
72 * testsuite/util/*: Likewise.
74 2016-04-28 Jonathan Wakely <jwakely@redhat.com>
77 * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
79 * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
81 * include/std/atomic (atomic<_Tp>): Likewise.
82 * include/std/shared_mutex (shared_lock): Likewise.
83 * testsuite/24_iterators/istream_iterator/70766.cc: New test.
84 * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
85 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
86 * testsuite/29_atomics/atomic/70766.cc: New test.
87 * testsuite/30_threads/shared_lock/70766.cc: New test.
89 * include/bits/hashtable_policy.h (__detail::_Insert_base,
90 __detail::_Insert): Improve comments.
92 2016-04-27 Jonathan Wakely <jwakely@redhat.com>
95 * include/std/limits: Update comments about DRs.
96 (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
97 numeric_limits<const volatile _Tp>): Define unconditionally.
99 2016-04-24 Jonathan Wakely <jwakely@redhat.com>
102 * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
103 static counter to return a different path on every call.
105 2016-04-22 Tim Shen <timshen@google.com>
108 * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
109 Fix the match_not_bow and match_not_eow behavior.
110 * testsuite/28_regex/regression.cc: Add testcase.
112 2016-04-20 Jonathan Wakely <jwakely@redhat.com>
115 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
116 __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
118 2016-04-19 Jonathan Wakely <jwakely@redhat.com>
121 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
122 Override endianness bit in mode.
123 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
124 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
125 that little_endian mode is ignored.
126 * testsuite/experimental/filesystem/path/native/string.cc: New test.
129 * src/filesystem/ops.cc (close_fd): New function.
130 (do_copy_file): Set permissions before copying file contents. Check
131 result of closing file descriptors. Don't copy streambuf when file
133 (copy(const path&, const path&, copy_options, error_code&)): Use
134 lstat for source file when copy_symlinks is set.
135 * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
137 * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
138 operator~ operator&=, operator|=, operator^=): Add noexcept to
139 overloaded operators for copy_options, perms and directory_options.
140 * src/filesystem/ops.cc (make_file_type, make_file_status,
141 is_not_found_errno, file_time): Add noexcept.
143 2016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net>
145 * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
147 2016-04-18 Jonathan Wakely <jwakely@redhat.com>
150 * include/bits/random.h: Reword static assertion messages to state
152 * include/bits/random.tcc: Likewise.
153 * include/bits/uniform_int_dist.h: Likewise.
154 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
157 * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
159 * config/cpu/sh/atomicity.h: Fix typo in comment.
162 * include/std/thread (operator<, operator==): Move definitions to
164 * testsuite/30_threads/thread/id/70294.cc: New test.
166 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
167 -Wno-pedantic to dg-options.
168 * testsuite/20_util/align/2.cc: Use type as operand of alignof.
169 * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
171 * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
172 Remove extra semi-colon.
173 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
174 Always supply second argument to static_assert.
175 * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
177 * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
179 * testsuite/26_numerics/complex/literals/values.cc: Likewise.
180 * testsuite/29_atomics/atomic/60695.cc: Likewise.
181 * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
182 alignof when operand is an object not a type.
183 * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
184 * testsuite/decimal/make-decimal.cc: Likewise.
185 * testsuite/experimental/type_traits/value.cc: Always supply second
186 argument to static_assert.
187 * testsuite/util/testsuite_common_types.h: Use __extension__ for
190 * testsuite/experimental/type_erased_allocator/1.cc: Don't include
192 * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
193 * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
194 * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
195 Likewise. Add licence and change to compile-only test.
197 * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
199 * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
201 * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
204 2016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net>
206 * include/bits/specfun.h: Trivial comment misspelling.
208 2016-04-14 Jason Merrill <jason@redhat.com>
210 Revert Jonathan's empty ABI change from yesterday.
212 2016-04-13 Martin Sebor <msebor@redhat.com>
215 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
216 upper bound is positive.
218 2016-04-13 Jonathan Wakely <jwakely@redhat.com>
220 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
221 _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
222 * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
223 of functions taking empty structs by value. Add a template parameter
224 to overloads without hints. Rename overloads with hints to
226 (_Hashtable::_M_erase(true_type, const_iterator),
227 _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
228 by reordering parameters.
229 * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
230 _M_emplace_hint instead of _M_emplace.
231 * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
232 shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
233 * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
234 __shared_ptr): Likewise.
235 * include/bits/stl_algo.h (replace_if): Likewise.
236 * include/bits/stl_pair.h (piecewise_construct_t,
237 piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
238 * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
239 __uses_alloc0): Likewise.
240 * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
241 * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
242 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
243 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
244 * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
245 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
246 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
248 2016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net>
250 Document C++17/TR29124 C++ Special Math Functions.
251 * include/bits/specfun.h: Add Doxygen markup.
253 2016-04-07 Jonathan Wakely <jwakely@redhat.com>
255 * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
257 2016-04-06 Eric Botcazou <ebotcazou@adacore.com>
259 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
260 * src/Makefile.in: Regenerate.
262 2016-04-05 Jonathan Wakely <jwakely@redhat.com>
265 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
266 __atomic_fetch_add for bool.
267 * configure: Regenerate.
269 * testsuite/30_threads/thread/70503.cc: Require -static to work.
272 * src/c++11/thread.cc (execute_native_thread_routine,
273 execute_native_thread_routine_compat): Give internal linkage.
274 * testsuite/30_threads/thread/70503.cc: New test.
276 2016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com>
279 * include/bits/stl_pair.h (_ConstructiblePair,
280 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
281 _ImplicitlyMoveConvertiblePair): Add shortcut conditions
283 * testsuite/20_util/pair/70437.cc: New.
285 2016-03-24 Jonathan Wakely <jwakely@redhat.com>
288 * config/abi/pre/gnu.ver: Add new symbol.
289 * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
290 * testsuite/18_support/free_eh_pool.cc: New test.
292 2016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
294 * include/Makefile.am (install-freestanding-headers): Add
295 concept_check.h and move.h to the installed headers.
296 * include/Makefile.in: Regenerated.
297 * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
298 freestanding implementations.
299 * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
300 that this macro has no effect for freestanding implementations.
301 * doc/html/manual/using_macros.html: Likewise.
303 2016-02-24 Jonathan Wakely <jwakely@redhat.com>
306 * include/experimental/tuple (__apply_impl): Qualify get and forward.
308 2016-02-23 Jonathan Wakely <jwakely@redhat.com>
310 * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
311 * doc/html/*: Regenerate.
314 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
315 exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
316 llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
317 nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
318 trunc) [__cplusplus >= 201103L]: Import from namespace std.
319 (fabs) [__cplusplus < 201103L]: Import from namespace std.
320 * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
322 * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
323 namespace before including TR1 headers.
324 * testsuite/tr1/headers/c++200x/math.cc: New test.
326 2016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
329 * include/c_global/cstdarg: Undefine __need___va_list.
330 * include/c_global/cstddef: Undefine all kinds of __need_*.
332 2016-02-16 Tim Shen <timshen@google.com>
335 * include/bits/regex_scanner.h: Add different special character
336 sets for grep and egrep regex.
337 * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
338 * testsuite/28_regex/regression.cc: Add new testcase.
340 2016-02-08 Jonathan Wakely <jwakely@redhat.com>
342 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
343 added 'constexpr' in previous commit.
344 * configure: Regenerate.
347 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
348 checks for all targets except *-*-solaris2.* and ensure we find the
349 libc math.h header not our own.
350 * configure: Regenerate.
352 2016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com>
354 * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
355 New file. Copied over from s390-linux-gnu.
357 2016-02-04 Jonathan Wakely <jwakely@redhat.com>
360 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
361 with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
362 * config.h.in: Regenerate.
363 * configure: Regenerate.
364 * testsuite/21_strings/c_strings/char/69626.cc: New.
366 * doc/html/index.html: Regenerate.
368 * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
369 * doc/xml/manual/spine.xml: Update copyright years and author blurb.
370 * doc/html/*: Regenerate.
372 2016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
375 * include/c_compatibility/math.h: Move header guards.
376 * include/c_compatibility/stdlib.h: Likewise.
378 2016-01-29 Jonathan Wakely <jwakely@redhat.com>
381 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
383 2016-01-28 John David Anglin <danglin@gcc.gnu.org>
386 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
387 isinf and isnan functions into two independent checks. Check on hpux.
388 * config.h.in: Regenerate.
389 * configure: Regenerate.
390 * include/c_global/cmath (isinf(double), isnan(double)): Use
391 _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
394 2016-01-27 Jakub Jelinek <jakub@redhat.com>
396 * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
398 2016-01-27 Jonathan Wakely <jwakely@redhat.com>
401 * testsuite/ext/special_functions/hyperg/check_value.cc: Use
402 -ffp-contract=off, and -ffloat-store to disable excess precision.
403 * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
406 2016-01-26 Jonathan Wakely <jwakely@redhat.com>
409 * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
410 random_access_iterator_tag>): Check is_move_assignable when moving.
411 (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
413 * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
414 * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
415 * testsuite/25_algorithms/move/69478.cc: New.
416 * testsuite/25_algorithms/move_backward/69478.cc: new.
418 2016-01-26 Andris Pavenis <andris.pavenis@iki.fi>
420 * include/c_compatibility/stdlib.h: Include wide character related
421 definitions only when they are available in cstdlib.
423 2016-01-25 Jonathan Wakely <jwakely@redhat.com>
426 * include/Makefile.am: Add new header.
427 * include/Makefile.in: Regenerate.
428 * include/bits/random.h (uniform_int_distribution): Move to
429 bits/uniform_int_dist.h.
430 * include/bits/random.tcc (uniform_int_distribution::operator(),
431 uniform_int_distribution::__generate_impl): Likewise.
432 * include/bits/uniform_int_dist.h: New header.
433 * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
434 <bits/uniform_int_dist.h> instead of <random>.
435 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
436 move_iterators/1.cc: Include correct header for uninitialized_copy.
437 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
438 move_iterators/1.cc: Likewise.
439 * testsuite/25_algorithms/nth_element/58800.cc: Include correct
441 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
443 2016-01-23 John David Anglin <danglin@gcc.gnu.org>
446 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
448 2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
450 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
451 * include/c_compatibility/math.h: Import the TR29124 functions
452 into the global namespace.
453 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
454 xfail and make compile-only.
455 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
456 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
457 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
458 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
459 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
460 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
461 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
462 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
463 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
464 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
465 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
466 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
467 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
468 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
469 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
470 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
471 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
472 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
473 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
474 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
476 2016-01-22 Jonathan Wakely <jwakely@redhat.com>
479 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
480 define result_type for types which can be safely used with valarrays.
481 * testsuite/26_numerics/valarray/69116.cc: New.
484 * config/os/gnu-linux/os_defines.h: Define
485 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
486 * include/c_global/cmath (isinf, isnan): Check it.
487 * doc/xml/manual/internals.xml: Document it.
488 * doc/html/*: Regenerate.
490 2016-01-21 Jonathan Wakely <jwakely@redhat.com>
493 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
494 * include/ext/type_traits.h: Likewise.
495 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
496 for presence of C headers.
497 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
498 dg-error line number.
499 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
500 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
501 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
503 2016-01-20 Torvald Riegel <triegel@redhat.com>
506 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
508 2016-01-20 Jonathan Wakely <jwakely@redhat.com>
511 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
512 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
513 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
514 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
515 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
516 Add using declarations.
517 * testsuite/26_numerics/headers/cmath/60401.cc: New.
520 * include/c_global/ccomplex: Ensure C++ language linkage.
521 * include/c_global/cmath: Likewise.
522 * include/c_global/cstdlib: Likewise.
523 * include/c_global/ctgmath: Likewise.
524 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
526 2016-01-19 Jonathan Wakely <jwakely@redhat.com>
530 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
531 --enable-cheaders=c_global configs.
532 * include/Makefile.in: Regenerate.
533 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
534 test and allow inclusion from C files.
535 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
536 (at_quick_exit, quick_exit): Add using directives.
537 * include/c_global/cmath: Use #include_next for math.h.
538 * include/c_global/cstdlib: Use #include_next for stdlib.h.
539 * testsuite/26_numerics/headers/cmath/14608.cc: New.
540 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
541 Remove xfail for most targets.
542 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
544 2016-01-18 Torvald Riegel <triegel@redhat.com>
546 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
547 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
548 and move after its definition.
549 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
550 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
551 __GXX_WEAK__, and only provide transactional clones if
552 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
555 2016-01-18 Jonathan Wakely <jwakely@redhat.com>
558 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
561 * include/std/functional (_Function_base::_M_not_empty_function):
562 Change overloads for pointers to take arguments by value.
563 * testsuite/20_util/function/cons/57465.cc: Add tests for
564 pointer-to-member cases.
567 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
568 Use macros for exception handling and fix unused parameter warning.
570 2016-01-17 John David Anglin <danglin@gcc.gnu.org>
573 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
575 2016-01-17 Torvald Riegel <triegel@redhat.com>
577 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
579 2016-01-16 H.J. Lu <hongjiu.lu@intel.com>
581 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
584 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
587 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
588 static assertion that type is constructible from the arguments.
589 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
590 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
591 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
594 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
595 and isnan on AIX. Quote variables.
596 * configure: Regenerate.
598 2016-01-15 Torvald Riegel <triegel@redhat.com>
600 * include/bits/basic_string.h (basic_string): Declare friends.
601 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
602 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
603 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
604 length_error, out_of_range, runtime_error, range_error,
605 underflow_error, overflow_error): Declare members as transaction-safe.
606 (logic_error, runtime_error): Declare friend functions.
607 * libsupc++/exception (exception, bad_exception): Declare members as
609 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
610 transaction-safe members of exceptions and helper functions.
611 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
612 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
613 (CXXABI_1.3.10): New.
614 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
615 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
616 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
617 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
618 * include/Makefile.in: Regenerate.
619 * config.h.in: Regenerate.
620 * configure: Regenerate.
621 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
623 2016-01-15 Steve Ellcey <sellcey@imgtec.com>
625 * include/ext/random.tcc: Use __builtin_isfinite instead of
628 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
630 * include/bits/std_mutex.h: Fix Doxygen @file name.
632 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
633 Jonathan Wakely <jwakely@redhat.com>
634 Florian Goth <CaptainSifff@gmx.de>
636 Implement TR29124 C++ special Math Functions.
637 * include/Makefile.am: Add new headers.
638 * include/Makefile.in: Regenerate.
639 * include/bits/specfun.h: New.
640 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
641 * include/tr1/bessel_function.tcc: Ditto.
642 * include/tr1/beta_function.tcc: Ditto.
643 * include/tr1/cmath: Ditto.
644 * include/tr1/ell_integral.tcc: Ditto.
645 * include/tr1/exp_integral.tcc: Ditto.
646 * include/tr1/gamma.tcc: Ditto.
647 * include/tr1/hypergeometric.tcc: Ditto.
648 * include/tr1/legendre_function.tcc: Ditto.
649 * include/tr1/modified_bessel_func.tcc: Ditto.
650 * include/tr1/poly_hermite.tcc: Ditto.
651 * include/tr1/poly_laguerre.tcc: Ditto.
652 * include/tr1/riemann_zeta.tcc: Ditto.
653 * include/tr1/special_function_util.h: Ditto.
654 * testsuite/ext/special_functions/conf_hyperg: New.
655 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
656 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
657 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
658 * testsuite/ext/special_functions/hyperg: New.
659 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
660 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
661 * testsuite/ext/special_functions/hyperg/compile.cc: New.
662 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
663 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
664 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
665 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
666 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
667 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
668 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
669 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
670 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
671 * testsuite/special_functions/03_beta/check_nan.cc: New.
672 * testsuite/special_functions/03_beta/check_value.cc: New.
673 * testsuite/special_functions/03_beta/compile.cc: New.
674 * testsuite/special_functions/03_beta/compile_2.cc: New.
675 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
676 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
677 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
678 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
679 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
680 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
681 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
682 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
683 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
684 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
685 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
686 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
687 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
688 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
689 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
690 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
691 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
692 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
693 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
694 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
695 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
696 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
697 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
698 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
699 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
700 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
701 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
702 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
703 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
704 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
705 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
706 * testsuite/special_functions/11_ellint_1/compile.cc: New.
707 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
708 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
709 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
710 * testsuite/special_functions/12_ellint_2/compile.cc: New.
711 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
712 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
713 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
714 * testsuite/special_functions/13_ellint_3/compile.cc: New.
715 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
716 * testsuite/special_functions/14_expint/check_nan.cc: New.
717 * testsuite/special_functions/14_expint/check_value.cc: New.
718 * testsuite/special_functions/14_expint/compile.cc: New.
719 * testsuite/special_functions/14_expint/compile_2.cc: New.
720 * testsuite/special_functions/15_hermite/check_nan.cc: New.
721 * testsuite/special_functions/15_hermite/check_value.cc: New.
722 * testsuite/special_functions/15_hermite/compile.cc: New.
723 * testsuite/special_functions/15_hermite/compile_2.cc: New.
724 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
725 * testsuite/special_functions/16_laguerre/check_value.cc: New.
726 * testsuite/special_functions/16_laguerre/compile.cc: New.
727 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
728 * testsuite/special_functions/17_legendre/check_nan.cc: New.
729 * testsuite/special_functions/17_legendre/check_value.cc: New.
730 * testsuite/special_functions/17_legendre/compile.cc: New.
731 * testsuite/special_functions/17_legendre/compile_2.cc: New.
732 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
733 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
734 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
735 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
736 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
737 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
738 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
739 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
740 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
741 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
742 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
743 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
744 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
745 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
746 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
747 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
748 * testsuite/util/specfun_testcase.h: New.
749 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
750 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
751 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
752 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
753 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
754 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
755 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
757 2016-01-13 Jonathan Wakely <jwakely@redhat.com>
760 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
762 * config.h.in: Regenerate.
763 * configure: Regenerate.
764 * include/c_global/cmath (isinf(double), isnan(double))
765 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
766 * testsuite/26_numerics/headers/cmath/48891.cc: New.
768 2016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
771 * configure.host (abi_baseline_pair): Use separate baseline for
772 Solaris 11+ and Solaris 10 with gld.
773 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
774 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
775 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
777 2016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
780 * include/std/type_traits: Following N4511, reimplement __is_swappable
781 and __is_nothrow_swappable. Move __is_swappable to namespace std,
782 adjust callers. Use __is_nothrow_swappable in swap.
783 * include/bits/move.h: Use __is_nothrow_swappable in swap.
784 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
785 __is_swappable related tests.
786 * testsuite/20_util/is_swappable/value.cc: New.
787 * testsuite/20_util/is_swappable/requirements/
788 explicit_instantiation.cc: New.
789 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
790 * testsuite/25_algorithms/swap/68877.cc: New.
792 2016-01-12 Jonathan Wakely <jwakely@redhat.com>
794 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
798 * include/std/functional (function::_Invoke): Remove, use result_of.
799 (function::_Callable): Replace alias template with class template
800 and use partial specialization instead of _NotSelf alias template.
801 (function(_Functor)): Add "not self" constraint so that _Callable is
802 not used while type is incomplete.
803 * testsuite/20_util/function/69222.cc: New.
805 2016-01-11 Jonathan Wakely <jwakely@redhat.com>
808 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
809 Define partial specialization.
810 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
811 destroy members to std::allocator explicit specialization.
813 2016-01-08 Jonathan Wakely <jwakely@redhat.com>
815 * testsuite/26_numerics/headers/cmath/
816 c99_classification_macros_c++.cc: Rename to ...
817 * testsuite/26_numerics/headers/cmath/
818 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
819 * testsuite/26_numerics/headers/cmath/
820 c99_classification_macros_c++0x.cc: Rename to ...
821 * testsuite/26_numerics/headers/cmath/
822 c99_classification_macros_c++11.cc: Here.
825 * include/bits/uses_allocator.h: Add missing include.
827 2016-01-07 Jonathan Wakely <jwakely@redhat.com>
832 * include/bits/stl_iterator.h (back_insert_iterator,
833 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
834 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
835 * include/std/future (__future::base::_State_baseV2::__setter):
837 * include/std/scoped_allocator (__outermost): Likewise.
838 * testsuite/20_util/scoped_allocator/69114.cc: New.
839 * testsuite/20_util/uses_allocator/69114.cc: New.
840 * testsuite/30_threads/promise/69106.cc: New.
842 2016-01-06 Jonathan Wakely <jwakely@redhat.com>
845 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
846 Remove _GLIBCXX_NOEXCEPT.
847 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
849 * include/Makefile.am: Adjust.
850 * include/Makefile.in: Regenerate.
851 * include/bits/mutex.h: Rename to bits/std_mutex.h.
852 * include/std/condition_variable: Adjust include.
853 * include/std/mutex: Likewise.
855 2016-01-04 Jakub Jelinek <jakub@redhat.com>
857 Update copyright years.
859 Copyright (C) 2016 Free Software Foundation, Inc.
861 Copying and distribution of this file, with or without modification,
862 are permitted in any medium without royalty provided the copyright
863 notice and this notice are preserved.