> This is a more complex case. In this case the compiler doesn't know in
> advance whether the argument is passed by value or by reference. What
> happens here is:
I'm trying to wrap my head around this, but if a function arg can handle
this, does something internal to the engine preclude fetching in write
context, after already fetching in read context, other than performance?
So can the initial fetch be performed with FETCH_DIM_R, handling the
object case + any other scalars, and if and only if the value is an
array and operating on what would traditionally be a by-ref, repeating
the previous lookup with FETCH_DIM_W?