2016-03-24 Jonathan Wakely PR libstdc++/69945 * config/abi/pre/gnu.ver: Add new symbol. * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define. * testsuite/18_support/free_eh_pool.cc: New test. 2016-03-23 Bernd Edlinger * include/Makefile.am (install-freestanding-headers): Add concept_check.h and move.h to the installed headers. * include/Makefile.in: Regenerated. * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for freestanding implementations. * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention that this macro has no effect for freestanding implementations. * doc/html/manual/using_macros.html: Likewise. 2016-02-24 Jonathan Wakely PR libstdc++/69939 * include/experimental/tuple (__apply_impl): Qualify get and forward. 2016-02-23 Jonathan Wakely * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__. * doc/html/*: Regenerate. PR libstdc++/69893 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma, trunc) [__cplusplus >= 201103L]: Import from namespace std. (fabs) [__cplusplus < 201103L]: Import from namespace std. * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]: Likewise. * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global namespace before including TR1 headers. * testsuite/tr1/headers/c++200x/math.cc: New test. 2016-02-23 Bernd Edlinger PR libstdc++/69881 * include/c_global/cstdarg: Undefine __need___va_list. * include/c_global/cstddef: Undefine all kinds of __need_*. 2016-02-16 Tim Shen PR libstdc++/69794 * include/bits/regex_scanner.h: Add different special character sets for grep and egrep regex. * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly. * testsuite/28_regex/regression.cc: Add new testcase. 2016-02-08 Jonathan Wakely * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally added 'constexpr' in previous commit. * configure: Regenerate. PR libstdc++/48891 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan checks for all targets except *-*-solaris2.* and ensure we find the libc math.h header not our own. * configure: Regenerate. 2016-02-05 Dominik Vogt * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC): New file. Copied over from s390-linux-gnu. 2016-02-04 Jonathan Wakely PR libstdc++/69626 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB. * config.h.in: Regenerate. * configure: Regenerate. * testsuite/21_strings/c_strings/char/69626.cc: New. * doc/html/index.html: Regenerate. * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI. * doc/xml/manual/spine.xml: Update copyright years and author blurb. * doc/html/*: Regenerate. 2016-02-01 Bernd Edlinger PR libstdc++/69581 * include/c_compatibility/math.h: Move header guards. * include/c_compatibility/stdlib.h: Likewise. 2016-01-29 Jonathan Wakely PR libstdc++/69506 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. 2016-01-28 John David Anglin PR libstdc++/69450 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete isinf and isnan functions into two independent checks. Check on hpux. * config.h.in: Regenerate. * configure: Regenerate. * include/c_global/cmath (isinf(double), isnan(double)): Use _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN, respectively. 2016-01-27 Jakub Jelinek * testsuite/libstdc++-prettyprinters/whatis.cc: Include . 2016-01-27 Jonathan Wakely PR libstdc++/69295 * testsuite/ext/special_functions/hyperg/check_value.cc: Use -ffp-contract=off, and -ffloat-store to disable excess precision. * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use -ffp-contract=off. 2016-01-26 Jonathan Wakely PR libstdc++/69478 * include/bits/stl_algobase.h (__copy_move<_IsMove, true, random_access_iterator_tag>): Check is_move_assignable when moving. (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>): Likewise. * testsuite/25_algorithms/copy/move_iterators/69478.cc: New. * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New. * testsuite/25_algorithms/move/69478.cc: New. * testsuite/25_algorithms/move_backward/69478.cc: new. 2016-01-26 Andris Pavenis * include/c_compatibility/stdlib.h: Include wide character related definitions only when they are available in cstdlib. 2016-01-25 Jonathan Wakely PR libstdc++/69464 * include/Makefile.am: Add new header. * include/Makefile.in: Regenerate. * include/bits/random.h (uniform_int_distribution): Move to bits/uniform_int_dist.h. * include/bits/random.tcc (uniform_int_distribution::operator(), uniform_int_distribution::__generate_impl): Likewise. * include/bits/uniform_int_dist.h: New header. * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include instead of . * testsuite/20_util/specialized_algorithms/uninitialized_copy/ move_iterators/1.cc: Include correct header for uninitialized_copy. * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/ move_iterators/1.cc: Likewise. * testsuite/25_algorithms/nth_element/58800.cc: Include correct header for vector. * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines. 2016-01-23 John David Anglin PR libstdc++/69446 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. 2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net> TR29124 C++ Special Math - pulls funcs into global namespace. * include/c_compatibility/math.h: Import the TR29124 functions into the global namespace. * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove xfail and make compile-only. * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto. * testsuite/special_functions/03_beta/compile_2.cc: Ditto. * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto. * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto. * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto. * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto. * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto. * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto. * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto. * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto. * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto. * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto. * testsuite/special_functions/14_expint/compile_2.cc: Ditto. * testsuite/special_functions/15_hermite/compile_2.cc: Ditto. * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto. * testsuite/special_functions/17_legendre/compile_2.cc: Ditto. * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto. * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto. * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto. * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto. 2016-01-22 Jonathan Wakely PR libstdc++/69116 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only define result_type for types which can be safely used with valarrays. * testsuite/26_numerics/valarray/69116.cc: New. PR libstdc++/69413 * config/os/gnu-linux/os_defines.h: Define _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC. * include/c_global/cmath (isinf, isnan): Check it. * doc/xml/manual/internals.xml: Document it. * doc/html/*: Regenerate. 2016-01-21 Jonathan Wakely PR libstdc++/69406 * include/bits/cpp_type_traits.h: Ensure C++ language linkage. * include/ext/type_traits.h: Likewise. * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros for presence of C headers. * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust dg-error line number. * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise. * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise. * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise. 2016-01-20 Torvald Riegel PR libstdc++/69310 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define. 2016-01-20 Jonathan Wakely PR libstdc++/60401 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt, copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint, nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]: Add using declarations. * testsuite/26_numerics/headers/cmath/60401.cc: New. PR libstdc++/69386 * include/c_global/ccomplex: Ensure C++ language linkage. * include/c_global/cmath: Likewise. * include/c_global/cstdlib: Likewise. * include/c_global/ctgmath: Likewise. * testsuite/17_intro/headers/c++2011/linkage.cc: New. 2016-01-19 Jonathan Wakely PR libstdc++/14608 PR libstdc++/60401 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for --enable-cheaders=c_global configs. * include/Makefile.in: Regenerate. * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C test and allow inclusion from C files. * include/c_compatibility/stdlib.h: Likewise. Support freestanding. (at_quick_exit, quick_exit): Add using directives. * include/c_global/cmath: Use #include_next for math.h. * include/c_global/cstdlib: Use #include_next for stdlib.h. * testsuite/26_numerics/headers/cmath/14608.cc: New. * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc: Remove xfail for most targets. * testsuite/26_numerics/headers/cstdlib/60401.cc: New. 2016-01-18 Torvald Riegel * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New. (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF and move after its definition. * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override. * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of __GXX_WEAK__, and only provide transactional clones if _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm functions. 2016-01-18 Jonathan Wakely PR libstdc++/60637 * testsuite/26_numerics/headers/cmath/60637.cc: Add test. PR libstdc++/69243 * include/std/functional (_Function_base::_M_not_empty_function): Change overloads for pointers to take arguments by value. * testsuite/20_util/function/cons/57465.cc: Add tests for pointer-to-member cases. PR libstdc++/69340 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions): Use macros for exception handling and fix unused parameter warning. 2016-01-17 John David Anglin PR libstdc++/68734 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. 2016-01-17 Torvald Riegel * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert. 2016-01-16 H.J. Lu * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add __int128 symbols. 2016-01-15 Jonathan Wakely PR libstdc++/69293 * include/bits/uses_allocator.h (__uses_alloc): Add static assertion that type is constructible from the arguments. * testsuite/20_util/scoped_allocator/69293_neg.cc: New. * testsuite/20_util/uses_allocator/69293_neg.cc: New. * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error. PR libstdc++/69294 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf and isnan on AIX. Quote variables. * configure: Regenerate. 2016-01-15 Torvald Riegel * include/bits/basic_string.h (basic_string): Declare friends. * include/bits/c++config (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New. * include/std/stdexcept (logic_error, domain_error, invalid_argument, length_error, out_of_range, runtime_error, range_error, underflow_error, overflow_error): Declare members as transaction-safe. (logic_error, runtime_error): Declare friend functions. * libsupc++/exception (exception, bad_exception): Declare members as transaction-safe. * src/c++11/cow-stdexcept.cc: Define transactional clones for the transaction-safe members of exceptions and helper functions. * libsupc++/eh_exception.cc: Adjust and define transactional clones. * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones. (CXXABI_1.3.10): New. * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New. (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW. * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING. * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h. * include/Makefile.in: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10. 2016-01-15 Steve Ellcey * include/ext/random.tcc: Use __builtin_isfinite instead of std::isfinite. 2016-01-15 Jonathan Wakely * include/bits/std_mutex.h: Fix Doxygen @file name. 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net> Jonathan Wakely Florian Goth Implement TR29124 C++ special Math Functions. * include/Makefile.am: Add new headers. * include/Makefile.in: Regenerate. * include/bits/specfun.h: New. * include/c_global/cmath: Adjust for both tr1 and tr29124 maths. * include/tr1/bessel_function.tcc: Ditto. * include/tr1/beta_function.tcc: Ditto. * include/tr1/cmath: Ditto. * include/tr1/ell_integral.tcc: Ditto. * include/tr1/exp_integral.tcc: Ditto. * include/tr1/gamma.tcc: Ditto. * include/tr1/hypergeometric.tcc: Ditto. * include/tr1/legendre_function.tcc: Ditto. * include/tr1/modified_bessel_func.tcc: Ditto. * include/tr1/poly_hermite.tcc: Ditto. * include/tr1/poly_laguerre.tcc: Ditto. * include/tr1/riemann_zeta.tcc: Ditto. * include/tr1/special_function_util.h: Ditto. * testsuite/ext/special_functions/conf_hyperg: New. * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New. * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New. * testsuite/ext/special_functions/conf_hyperg/compile.cc: New. * testsuite/ext/special_functions/hyperg: New. * testsuite/ext/special_functions/hyperg/check_nan.cc: New. * testsuite/ext/special_functions/hyperg/check_value.cc: New. * testsuite/ext/special_functions/hyperg/compile.cc: New. * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory. * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New. * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New. * testsuite/special_functions/01_assoc_laguerre/compile.cc: New. * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New. * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New. * testsuite/special_functions/02_assoc_legendre/check_value.cc: New. * testsuite/special_functions/02_assoc_legendre/compile.cc: New. * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New. * testsuite/special_functions/03_beta/check_nan.cc: New. * testsuite/special_functions/03_beta/check_value.cc: New. * testsuite/special_functions/03_beta/compile.cc: New. * testsuite/special_functions/03_beta/compile_2.cc: New. * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New. * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New. * testsuite/special_functions/04_comp_ellint_1/compile.cc: New. * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New. * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New. * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New. * testsuite/special_functions/05_comp_ellint_2/compile.cc: New. * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New. * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New. * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New. * testsuite/special_functions/06_comp_ellint_3/compile.cc: New. * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New. * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New. * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New. * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New. * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New. * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New. * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New. * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New. * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New. * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New. * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New. * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New. * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New. * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New. * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New. * testsuite/special_functions/10_cyl_neumann/check_value.cc: New. * testsuite/special_functions/10_cyl_neumann/compile.cc: New. * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New. * testsuite/special_functions/11_ellint_1/check_nan.cc: New. * testsuite/special_functions/11_ellint_1/check_value.cc: New. * testsuite/special_functions/11_ellint_1/compile.cc: New. * testsuite/special_functions/11_ellint_1/compile_2.cc: New. * testsuite/special_functions/12_ellint_2/check_nan.cc: New. * testsuite/special_functions/12_ellint_2/check_value.cc: New. * testsuite/special_functions/12_ellint_2/compile.cc: New. * testsuite/special_functions/12_ellint_2/compile_2.cc: New. * testsuite/special_functions/13_ellint_3/check_nan.cc: New. * testsuite/special_functions/13_ellint_3/check_value.cc: New. * testsuite/special_functions/13_ellint_3/compile.cc: New. * testsuite/special_functions/13_ellint_3/compile_2.cc: New. * testsuite/special_functions/14_expint/check_nan.cc: New. * testsuite/special_functions/14_expint/check_value.cc: New. * testsuite/special_functions/14_expint/compile.cc: New. * testsuite/special_functions/14_expint/compile_2.cc: New. * testsuite/special_functions/15_hermite/check_nan.cc: New. * testsuite/special_functions/15_hermite/check_value.cc: New. * testsuite/special_functions/15_hermite/compile.cc: New. * testsuite/special_functions/15_hermite/compile_2.cc: New. * testsuite/special_functions/16_laguerre/check_nan.cc: New. * testsuite/special_functions/16_laguerre/check_value.cc: New. * testsuite/special_functions/16_laguerre/compile.cc: New. * testsuite/special_functions/16_laguerre/compile_2.cc: New. * testsuite/special_functions/17_legendre/check_nan.cc: New. * testsuite/special_functions/17_legendre/check_value.cc: New. * testsuite/special_functions/17_legendre/compile.cc: New. * testsuite/special_functions/17_legendre/compile_2.cc: New. * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New. * testsuite/special_functions/18_riemann_zeta/check_value.cc: New. * testsuite/special_functions/18_riemann_zeta/compile.cc: New. * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New. * testsuite/special_functions/19_sph_bessel/check_nan.cc: New. * testsuite/special_functions/19_sph_bessel/check_value.cc: New. * testsuite/special_functions/19_sph_bessel/compile.cc: New. * testsuite/special_functions/19_sph_bessel/compile_2.cc: New. * testsuite/special_functions/20_sph_legendre/check_nan.cc: New. * testsuite/special_functions/20_sph_legendre/check_value.cc: New. * testsuite/special_functions/20_sph_legendre/compile.cc: New. * testsuite/special_functions/20_sph_legendre/compile_2.cc: New. * testsuite/special_functions/21_sph_neumann/check_nan.cc: New. * testsuite/special_functions/21_sph_neumann/check_value.cc: New. * testsuite/special_functions/21_sph_neumann/compile.cc: New. * testsuite/special_functions/21_sph_neumann/compile_2.cc: New. * testsuite/util/specfun_testcase.h: New. * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases. * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto. * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto. * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto. * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto. * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto. * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New. 2016-01-13 Jonathan Wakely PR libstdc++/48891 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf and isnan functions. * config.h.in: Regenerate. * configure: Regenerate. * include/c_global/cmath (isinf(double), isnan(double)) [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive. * testsuite/26_numerics/headers/cmath/48891.cc: New. 2016-01-13 Rainer Orth PR libstdc++/66006 * configure.host (abi_baseline_pair): Use separate baseline for Solaris 11+ and Solaris 10 with gld. * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file. * config/abi/post/solaris2.11/baseline_symbols.txt: New file. * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file. 2016-01-12 Daniel Kruegler PR libstdc++/68877 * include/std/type_traits: Following N4511, reimplement __is_swappable and __is_nothrow_swappable. Move __is_swappable to namespace std, adjust callers. Use __is_nothrow_swappable in swap. * include/bits/move.h: Use __is_nothrow_swappable in swap. * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove __is_swappable related tests. * testsuite/20_util/is_swappable/value.cc: New. * testsuite/20_util/is_swappable/requirements/ explicit_instantiation.cc: New. * testsuite/20_util/is_swappable/requirements/typedefs.cc: New. * testsuite/25_algorithms/swap/68877.cc: New. 2016-01-12 Jonathan Wakely * testsuite/20_util/function/68995.cc: Test reference_wrapper cases. PR libstdc++/69005 PR libstdc++/69222 * include/std/functional (function::_Invoke): Remove, use result_of. (function::_Callable): Replace alias template with class template and use partial specialization instead of _NotSelf alias template. (function(_Functor)): Add "not self" constraint so that _Callable is not used while type is incomplete. * testsuite/20_util/function/69222.cc: New. 2016-01-11 Jonathan Wakely PR libstdc++/60976 * include/bits/alloc_traits.h (allocator_traits>): Define partial specialization. * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and destroy members to std::allocator explicit specialization. 2016-01-08 Jonathan Wakely * testsuite/26_numerics/headers/cmath/ c99_classification_macros_c++.cc: Rename to ... * testsuite/26_numerics/headers/cmath/ c99_classification_macros_c++98.cc: Here and add -std=gnu++98. * testsuite/26_numerics/headers/cmath/ c99_classification_macros_c++0x.cc: Rename to ... * testsuite/26_numerics/headers/cmath/ c99_classification_macros_c++11.cc: Here. PR libstdc++/69190 * include/bits/uses_allocator.h: Add missing include. 2016-01-07 Jonathan Wakely PR libstdc++/69105 PR libstdc++/69106 PR libstdc++/69114 * include/bits/stl_iterator.h (back_insert_iterator, front_insert_iterator, insert_iterator): Use __addressof (LWG 2324). * include/bits/uses_allocator.h (__use_alloc): Use __addressof. * include/std/future (__future::base::_State_baseV2::__setter): Likewise. * include/std/scoped_allocator (__outermost): Likewise. * testsuite/20_util/scoped_allocator/69114.cc: New. * testsuite/20_util/uses_allocator/69114.cc: New. * testsuite/30_threads/promise/69106.cc: New. 2016-01-06 Jonathan Wakely PR libstdc++/69092 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>): Remove _GLIBCXX_NOEXCEPT. testsuite/21_strings/basic_string/cons/char/69092.cc: New. * include/Makefile.am: Adjust. * include/Makefile.in: Regenerate. * include/bits/mutex.h: Rename to bits/std_mutex.h. * include/std/condition_variable: Adjust include. * include/std/mutex: Likewise. 2016-01-04 Jakub Jelinek Update copyright years. Copyright (C) 2016 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.