The needToWorkAround6260652 changes ought to be in a separate changeset. The biggest question is whether Collection.toArray(generator) pulls its weight, especially in view of https://shipilev.net/blog/2016/arrays-wisdom-ancients.
I rarely want to dump elements into a typed array. Dumping into Object[] with toArray() is just fine for me (but I'm a biased core library developer).