[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Automatially move from $n (was: C++11 move semantics)
From: |
Hans Åberg |
Subject: |
Re: Automatially move from $n (was: C++11 move semantics) |
Date: |
Sat, 15 Sep 2018 22:01:24 +0200 |
> On 15 Sep 2018, at 21:57, Frank Heckenbach <address@hidden> wrote:
>
> Hans Åberg wrote:
>
>>>> The idea would be to write something equivalent to
>>>> return make_unique<foo>($1, $2, $3);
>>>> and the Bison writes something like
>>>> $$ = std::move(action_k(...return make_unique<foo>($1, $2, $3);...))
>>>
>>> I don't follow you. What is action_k, and how would that cause
>>> moving from $1 etc.?
>>
>> Action k in the switch statement.
>
> Huh? I really don't get what your proposed syntax is supposed to
> mean. Is action_k supposed to be a lambda (what else could appear in
> an expression and contain a statement inside)? What would it do?
Just produce an r-value.
>> Move operators were originally designed to avoid copying in returns.
>
> I don't know if this was so or not originally, but I'm talking about
> moving arguments, not return values. That's what I've been saying
> the whole time, including the thread subject! Moving the return
> value is no big problem most of the time: "$$ = make_unique ..."
> works without any std::move because a function result(*) is
> automatically an rvalue.
The idea is to create an r-value situation, which then translates into a move
assignment.
- Re: Automatially move from $n (was: C++11 move semantics), Akim Demaille, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics),
Hans Åberg <=
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Frank Heckenbach, 2018/09/15
- Re: Automatially move from $n (was: C++11 move semantics), Hans Åberg, 2018/09/15