[Patch, libstdc++/64584, libstdc++/64585] Clear basic_regex after imbue and make assign exception tolerant

Jonathan Wakely jwakely@redhat.com
Sun Jan 18 00:24:00 GMT 2015


On 17/01/15 16:08 -0800, Tim Shen wrote:
>On Sat, Jan 17, 2015 at 4:06 PM, Tim Shen <timshen@google.com> wrote:
>> I'm not 100% sure of that, but isn't moving a pointer the same as copying?

You can't move a pointer, you can only copy it.

Rmember all std::move does is cast something to an rvalue reference,
whether that actually leads to a move depends on what happens to the
object afterwards.

Initializing a pointer from another pointer just copies the value and
has no way of doing anything different whether the source is an rvalue
or an lvalue.

>I mean time cost here. By the way, is the rhs pointer still valid or
>in an unspecified state?

It won't be changed at all.



More information about the Libstdc++ mailing list