Make sure lifetime of helper structs is less than owning struct
Sebastiaan Koppe
mail at skoppe.eu
Tue Nov 16 08:35:29 UTC 2021
On Monday, 15 November 2021 at 22:49:12 UTC, Ali Çehreli wrote:
> Trying with it produces an error when 'new' is not used:
>
> Error: reference to local variable `file` assigned to non-scope
> parameter `p` calling deneme.ByChunk.opAssign
The error is what the OP wanted, so that is expected.
Although, he did ask for it to be on the next line, but this is
better since it points exactly to the line where he was escaping
a reference to the scoped object.
> I don't see how it solves the problem. Sebastiaan Koppe might
> have intended to allocate the object dynamically with 'new' as
> well?
No I didn't. Anything created with new has automatic lifetime.
Here the OP wanted to (have the compiler) destroy the FileReader
when it left the scope, while disallowing any use after free.
More information about the Digitalmars-d-learn
mailing list