On Saturday, 17 October 2020 at 14:56:33 UTC, Basile B. wrote:
On Saturday, 17 October 2020 at 14:50:47 UTC, NonNull wrote:
I have inherited an open source C project that assumes that
the size of a long and the size of a pointer are the same, and
I have translated it into very similar D just like
https://dlang.org/blog/2018/06/11/dasbetterc-converting-make-c-to-d/
D has the size of long fixed at 64 bits, so a pointer now has
to be 64 bits.
No it's wrong. A pointer always has the size of a general
purpose register.
You misunderstand. The original C only works if the size of a
pointer is the same as the size of a long. So when translated
into D in a simple way where the size of a long is always 64 bits
the D will only work if the size of a pointer is 64 bits.