Can we just use the second code path unconditionally? (With a comment noting that recomputing from scratch is safest because it's possible the removed axis was zero-sized.) No point in having multiple code paths where one will do.