r239145 - in /trunk/libstdc++-v3: ChangeLog doc...

redi@gcc.gnu.org redi@gcc.gnu.org
Thu Aug 4 18:02:00 GMT 2016


Author: redi
Date: Thu Aug  4 18:02:56 2016
New Revision: 239145

URL: https://gcc.gnu.org/viewcvs?rev=239145&root=gcc&view=rev
Log:
Define std::is_callable and std::is_nothrow_callable

	* doc/xml/manual/status_cxx2017.xml: Update status table.
	* include/std/functional (__inv_unwrap): Move to <type_traits>.
	(__invoke_impl): Remove exception specifications.
	(__invoke, invoke): Add exception specifications using
	__is_nothrow_callable.
	* include/std/type_traits (__inv_unwrap): Move from <functional>.
	(__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers.
	(__is_callable, __is_nothrow_callable): New traits.
	(is_callable, is_callable_v): New C++17 traits.
	(is_nothrow_callable, is_nothrow_callable_v): Likewise.
	* testsuite/20_util/is_callable/requirements/
	explicit_instantiation.cc: New test.
	* testsuite/20_util/is_callable/requirements/
	explicit_instantiation_ext.cc: New test.
	* testsuite/20_util/is_callable/requirements/typedefs.cc: New test.
	* testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New
	test.
	* testsuite/20_util/is_callable/value.cc: New test.
	* testsuite/20_util/is_callable/value_ext.cc: New test.
	* testsuite/20_util/is_nothrow_callable/requirements/
	explicit_instantiation.cc: New test.
	* testsuite/20_util/is_nothrow_callable/requirements/
	explicit_instantiation_ext.cc: New test.
	* testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc:
	New test.
	* testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc:
	New test.
	* testsuite/20_util/is_nothrow_callable/value.cc: New test.
	* testsuite/20_util/is_nothrow_callable/value_ext.cc: New test.

Added:
    trunk/libstdc++-v3/testsuite/20_util/is_callable/
    trunk/libstdc++-v3/testsuite/20_util/is_callable/requirements/
    trunk/libstdc++-v3/testsuite/20_util/is_callable/requirements/explicit_instantiation.cc
    trunk/libstdc++-v3/testsuite/20_util/is_callable/requirements/explicit_instantiation_ext.cc
    trunk/libstdc++-v3/testsuite/20_util/is_callable/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_callable/requirements/typedefs_ext.cc
    trunk/libstdc++-v3/testsuite/20_util/is_callable/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_callable/value_ext.cc
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/requirements/
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/requirements/explicit_instantiation.cc
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/requirements/explicit_instantiation_ext.cc
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_nothrow_callable/value_ext.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/doc/xml/manual/status_cxx2017.xml
    trunk/libstdc++-v3/include/std/functional
    trunk/libstdc++-v3/include/std/type_traits



More information about the Libstdc++-cvs mailing list