See #13101 and #15454 (closed)
I also have a variation stashed which doesn't use CPP for this, and instead uses a strict datatype. I haven't benchmarked how that performs vs an unboxed tuple. However, I figured it'd be easier to get this merged if there's reason to believe it has 0 performance impact, and so did this CPP thing.
This is only useful when / if !554 (merged) is merged