Value handling failed while using lists within lists

I can’t recall reading anything about this in the change log but could it be that lists within lists now preferably work with call-by-reference rather than call-by-value? In my old code, I could write something like this:

[code]Lab is a room.

A person has a list of lists of numbers called num.

To initialize (p - a person):
let new-coords be a list of lists of numbers;
let new-coord be a list of numbers;
add 1 to new-coord;
add 2 to new-coord;
add 3 to new-coord;
add new-coord to new-coords;
truncate new-coord to 0 entries;
now num of p is new-coords;
pop one new-coords;
now new-coords is {};
rule succeeds.

To pop one (l - a list of lists of numbers):
remove Entry 1 from l;
rule succeeds.

When play begins:
initialize player;
say num of player;[/code]

And get the result {{1, 2, 3}} while now I get the following error message:

Oddly enough, if you add another list to the list like this:

add 4 to new-coord; add 5 to new-coord; add 6 to new-coord; add new-coord to new-coords; truncate new-coord to 0 entries;

It won’t show the error but I end up with two empty lists within the list. My own code doesn’t throw the error either, where I have only one list within the list, but that one too will end up empty, which wasn’t the case before. The only solution I could find was to declare another list of lists variable in the following phrase and fill it with entries from the phrase parameter. Is this now supposed to be the norm? Are there any easier solutions to copy the content of a list of lists, rather than its references within, to another phrase rather than creating a new variable?

Sorry for bringing this topic up again. Haven’t had much time lately and I was hoping that another maintenance update would fix my problem. Wasn’t the case though. I would still very much like to know if I’m dealing with a bug here or the new standard behaviour and if I can do anything about it instead of just creating another list element within the To-phrase.

I believe that something like this was reported on mantis (bug tracker).
However; it don’t believe it was fixed as of a few days ago.
I’ve had a similar message, posted a question and am waiting to see if someone can suggest a workaround.

Managed to get things working without errors.
Seems that one must always transmute and un-transmute any “string” not passed back to Inform7.
Any “strings” returned as a “retval” must be transmuted within in the routine and passed back without un-transmuting.
Had a dickens of a time extracting this info from the various code and documentation.
It isn’t actually stated explicitly anywhere.