I'll need to do a deeper dive in the code, but: maybe. The current implementation is to fail loud, but as you say, no array values need not be a failure.
RET_ARRAY is wonderful, but is it possible to stop it complaining that the return array is uninitialized? There are quite a few cases where I want to return an array that might or might not be empty; I inevitably have to put something like SET $output_array("null")=0 and then filter out the null value when I analyze the output.