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

redi@gcc.gnu.org redi@gcc.gnu.org
Thu May 23 21:41:00 GMT 2019


Author: redi
Date: Thu May 23 21:41:02 2019
New Revision: 271583

URL: https://gcc.gnu.org/viewcvs?rev=271583&root=gcc&view=rev
Log:
LWG 2996 add rvalue overloads for shared_ptr aliasing and casting

	* doc/xml/manual/intro.xml: Document LWG DR 2996 change.
	* doc/html/*: Regenerate.
	* include/bits/shared_ptr.h (shared_ptr(shared_ptr&&, T*)): Add
	rvalue aliasing constructor.
	(static_pointer_cast, const_pointer, dynamic_pointer_cast)
	(reinterpret_pointer_cast): Add overloads taking rvalues.
	* include/bits/shared_ptr_base.h (__shared_ptr(__shared_ptr&&, T*)):
	Add rvalue aliasing constructor.
	* testsuite/20_util/shared_ptr/casts/1.cc: Change "compile" test to
	"run" and check return values as well as types.
	* testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise.
	* testsuite/20_util/shared_ptr/casts/rval.cc: New test.
	* testsuite/20_util/shared_ptr/cons/alias-rval.cc: New test.
	* testsuite/20_util/shared_ptr/cons/alias.cc: Remove unused return
	values.

Added:
    trunk/libstdc++-v3/testsuite/20_util/shared_ptr/casts/rval.cc
    trunk/libstdc++-v3/testsuite/20_util/shared_ptr/cons/alias-rval.cc
      - copied, changed from r271582, trunk/libstdc++-v3/testsuite/20_util/shared_ptr/cons/alias.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/doc/html/manual/api.html
    trunk/libstdc++-v3/doc/html/manual/bugs.html
    trunk/libstdc++-v3/doc/xml/manual/intro.xml
    trunk/libstdc++-v3/include/bits/shared_ptr.h
    trunk/libstdc++-v3/include/bits/shared_ptr_base.h
    trunk/libstdc++-v3/testsuite/20_util/shared_ptr/casts/1.cc
    trunk/libstdc++-v3/testsuite/20_util/shared_ptr/casts/reinterpret.cc
    trunk/libstdc++-v3/testsuite/20_util/shared_ptr/cons/alias.cc



More information about the Libstdc++-cvs mailing list