array value itself was NULL.
Choosen to return without error adding zero elements to the list. If you really need strict NULL handling do this
using the other functions possibly checking for null before hand to choose other code path.
The static_cast route caused it to compile streaming into a vector but actually
generated code that would fail at runtime. This new version won't compile when the left hand
is a vector.