On 5/16/18 12:53 PM, Robert M. Münch wrote:
On 2018-05-16 15:09:41 +0000, rikki cattermole said:
On 17/05/2018 3:07 AM, Robert M. Münch wrote:
I have an extern(C) function in a DLL with this signature:
result* myfunc(double x, double y, const char *text, stuff *myStuff,
bool flag);
I call it like this:
result = myfunc(0, 0, std.string.toStringz("1"), stuff, true);
The problem is, that on the DLL side *text is always NULL. I doesn't
matter what I put as third argument. And even more strange, I have an
other function with a const char* as first argument. There everything
is working...
Any idea what cause this could be? This is really strange...
Please post the C function prototype.
Well, for C see above on the D side:
extern(C) {
result myfunc(double x, double y, const char *text, stuff
*myStuff, bool measureOnly);
}
Shouldn't the result be a pointer?
-Steve