Fix array expansion for bytecode types

Make array expansion consistent with respect to null. Previously, when
the component type of the expression was a bytecode type, and the root
expression was null, the result of the expression was null. However, if
the component type of the expression was a non-bytecode type, then the
result of the expression was an empty array. Now, the result of the
expression is an empty array regardless of whether the component type is
a "bytecode" type or not.