As this is a 1:1 code base of HMH, I made the mistake of thinking that &reference and *const pointer are the same things, and thus started lifetime hell and outright failing to compile. The lesson learned here is to use unsafe and raw pointers liberally because the rust way of doing things vs caseys way of pre-allocation doesn't work well at all.