> On Jun 17, 2019, at 1:00 PM, Sven Barth via fpc-devel
> <[email protected]> wrote:
>
> If we do this at all we should use a separate operator as those two are
> rather different operations and the compiler would already have figured out
> which of the two operations is needed and thus the code inside the operator
> doesn't need to do that anymore.
>
> That said this would require extending the RTL assignment helper.
>
> And the problems that Jonas mentioned are less problems inside the compiler,
> but problems inside the user code when they write their Move operator
> incorrectly. From great power comes great responsibility after all and I'm
> not sure whether we should provide the users with that much power.
I see. Looking at this on Sunday I see in assignment nodes fpc_copy_proc would
need to be modified or a new fpc_move_proc introduced which (for now at least)
would only affect records which had a move operator. In theory the concept
could be extended to dynamic arrays and other reference counted types but
that’s another story.
Regards,
Ryan Joseph
_______________________________________________
fpc-devel maillist - [email protected]
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel