Best way to confine project to 64 bit builds only?

NonNull non-null at use.startmail.com
Sat Oct 17 15:17:19 UTC 2020


On Saturday, 17 October 2020 at 15:03:29 UTC, Dennis wrote:
> If you want to exactly match the original C code's semantics, I 
> suggest translating (unsigned) long with c_long or c_ulong. You 
> can import them here:
> ```
> import core.stdc.config: c_long, c_ulong;
> ```
>
> Then you could add this:
> ```
> static assert(c_long.sizeof == size_t.sizeof);
> ```
>
> This will fail on Windows 64 bit, where C longs are 32-bit and 
> pointers 64-bit.

That is useful information in general, I did not know about 
core.stdc.config and it is useful in future projects!

But for my project the C works at 64 bits except on Windows for 
the reason you gave. So by translating long in C to long in D it 
loses 32 bits but gains 64 bits on Windows. This is what I want.


More information about the Digitalmars-d-learn mailing list