On Sunday, 17 September 2017 at 19:16:06 UTC, bitwise wrote:
On Sunday, 17 September 2017 at 18:44:47 UTC, nkm1 wrote:
On Sunday, 17 September 2017 at 17:06:10 UTC, bitwise wrote:
[...]
Just put the burden on the users then. It's implementation
defined, so they are in position to figure it out...
This isn't something that can really be done with bindings,
which are important for D to start really picking up speed.
If someone goes to code.dlang.org and decides to download some
FreeType2 bindings, they should just work. The memory
corruption bugs that could occur due to binary incompatibility
with some random copy of the original C library would be
extremely hard to diagnose. They would also undermine the
memory safety that a lot of people depend on when using D.
I've been maintaining bindings to multiple C libraries (including
Freetype 2 bindings) for 13 years now. I have never encountered
an issue with an enum size mismatch. That's not to say I never
will.
I would say it's something you just don't have worry about. If,
at some future time, any C compiler on any platform decides to
start treating enums as something other than int or uint by
default, then we can report a bug for D and fix it.