On Sat, 03 Oct 2009 22:47:53 +0400, Walter Bright
<[email protected]> wrote:
Denis Koroskin wrote:
I'm currently writing a program that interfaces with C++.
C++ code uses a lot of 'unsigned long', which equals to 'unsigned int',
or just 'unsigned', but is mangled differently.
In particular, C++ mangles unsigned long as 'K', and I can't find a D
counterpart that would be mangled similarly.
This results in an unaccessible function (it is unresolved at link
time).
Any thoughts?
The problem is there is no way to express in D both an unsigned and an
unsigned long, since they are both uints in D. I don't know of a way
around this, other than changing the C++ code.
That's not always possible. Imagine LGPL'd code, or code which is
distributed in precompiled form only (header + library).