Stores an arena ID alongside a pointer. On 64-bit architectures the arena ID can be encoded in the otherwise unused MSB part of the pointer for zero memory overhead vs a regular pointer. For 32-bit architectures the arena ID is stored in a separate member.