I don't know where that cast occurs but I wanted to state the obvious: Operator ~ is defined only for arrays.
Would having it also work for individual units to make an array be a plausible enhancement request? It would seem like a natural use of the operator.
