We initialize subclasses of Array because we might need to allocate a new structure to change indexing types during initialization. If this triggered a GC then we might scan our currently uninitialized array and crash. If we had a GCDeferralContext then we could avoid this.