Attached a fix for lvalue subs returning an array into the args of another sub call or for loop. I've modified leavesublv in that case to convert the returned arrayref to a non-ref.