Add <experimental/algorithm> and <experimental/functional>.

	* doc/xml/manual/status_cxx2014.xml: Update TS status.
	* include/Makefile.am: Add new headers.
	* include/Makefile.in: Regenerate.
	* include/experimental/algorithm: New.
	* include/experimental/functional: New.
	* testsuite/experimental/algorithm/sample.cc: New.
	* testsuite/experimental/algorithm/search.cc: New.
	* testsuite/experimental/functional/not_fn.cc: New.
	* testsuite/experimental/functional/searchers.cc: New.
	* testsuite/experimental/functional/value.cc: New.
	* testsuite/experimental/feat-lib-fund.cc: Add headers and reorder.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216847 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/experimental/any: Add feature-testing macro.
	* include/experimental/optional: Likewise.
	* include/experimental/string_view: Likewise.
	* include/experimental/tuple: Likewise.
	* include/experimental/type_traits: Likewise.
	* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216848 138bc75d-0d04-0410-961f-82ee72b054a4
Use perfect forwarding in std::function invokers.

	* include/std/functional: (_Function_base::_Function_base()): Use
	nullptr instead of literal zero.
	(function::operator=(nullptr_t)): Likewise.
	(_Function_handler::_M_invoke): Use perfect forwarding for _ArgTypes.
	(function::_Invoker_type): Likewise.
	* testsuite/20_util/function/invoke/forwarding.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216849 138bc75d-0d04-0410-961f-82ee72b054a4