Enable new instances of unknown arrays with dynamic sizes
UnknownArrayHandle allows you to create a new instance of a compatible
array so that when receiving an array of unknown type, a place to put the
output can be created. However, these methods only worked if the number of
components in each value could be determined statically at compile time.
However, there are some special ArrayHandles that can define the number
of components at runtime. In this case, the ArrayHandle would throw an
exception if NewInstanceBasic or NewInstanceFloatBasic was called.
Although rare, this condition could happen when, for example, an array was
extracted from an UnknownArrayHandle with ExtractArrayFromComponents or
with CastAndCallWithExtractedArray and then the resulting array was
passed to a function with arrays passed with UnknownArrayHandle such as
ArrayCopy.