You're on to something, but it's the other way around: calculating `d` entails calling `cast(void*) result.Scoped_payload - result.Scoped_store.ptr`, which calls `Scoped_payload`. Scoped payload will make a read to that area to verify alignment, so that variable must be initialized before calling that line.

That said, the line 3356, as you mention, is itself useless, and has always been, since `Scoped_payload` will have already done the job. I'll open an improvement to remove it.

I was wondering: I seem to recall you were the one that wrote that code originally. Is any of this code necessary on a 64 bit run-time? Do you think it could be possible to place that code in a version block?