[PATCH] LWG 2996 add rvalue overloads for shared_ptr aliasing and casting
Christophe Lyon
christophe.lyon@linaro.org
Fri May 24 09:02:00 GMT 2019
Hi Jonathan,
On Thu, 23 May 2019 at 23:40, Jonathan Wakely <jwakely@redhat.com> wrote:
>
> * 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.
>
> Tested powerpc64le-linux, committed to trunk.
>
As you may have noticed, the new test alias-rval.cc fails on arm and
aarch64, and other targets according to gcc-testresults@
Christophe
More information about the Libstdc++
mailing list