This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] LWG 2996 add rvalue overloads for shared_ptr aliasing and casting
- From: Christophe Lyon <christophe dot lyon at linaro dot org>
- To: Jonathan Wakely <jwakely at redhat dot com>
- Cc: "libstdc++" <libstdc++ at gcc dot gnu dot org>, gcc Patches <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 24 May 2019 11:02:30 +0200
- Subject: Re: [PATCH] LWG 2996 add rvalue overloads for shared_ptr aliasing and casting
- References: <20190523214000.GA9229@redhat.com>
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