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