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