pop & popFront combined
"Nordlöw" via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sun Nov 2 04:29:13 PST 2014
On Sunday, 2 November 2014 at 11:46:19 UTC, Marc Schütz wrote:
> I think DMD doesn't generate good code for it; IIRC it lowers
> scope(success) to a strange construct with an invisible
> variable and a try/catch. Don't know the reasons for this,
> maybe it has changed by now. Theoretically it would just need
> to move the contents of the scope(success) after the evaluation
> of the returned expression, which is cheap.
Are there cases in LDC where
auto e = r.moveFront;
r.popFront;
return e;
generates code less efficient than
scope(success) r.popFront;
return r.moveFront;
because of the extra assignment?
More information about the Digitalmars-d-learn
mailing list