@Sixte; You missed my point:

It seems that Nim **parameters** don't have to be specified as being owned and 
if not specified can handle either with the compiler causing the right behavior 
depending on what is provided; if it were required that the "ownedness" be 
specified, then one would need to provide proc overloads for all the 
combinations, leading to a lot of extra boilerplate code - IIRC, that is what 
Rust does. OTOH, storage **locations** need to be specified as owned or not and 
everything including use in copying/moving proc parameters must respect the 
"ownedness" of the source and destination.

This last is what the bug is for this one case where the source is a proc 
parameter when it is owned (which the compiler already knows) and the 
destination is not owned but the compiler is mistakenly treating it as if it 
were.

Reply via email to