Use a closure to allocate structs onto the `Arena`

This is a trick borrowed from Bumpalo that helps LLVM understand
it should instantiate the object directly on the heap, as opposed to
doing so on the stack and then moving it.
5a4e2e6b90Antonio Scandurra committed on 12/18/2023, 9:56:37 AMparent3781626
4 files changedLine totals unavailable