C++/D class interop example crashes

Bastiaan Veelo Bastiaan at Veelo.net
Sat Mar 27 18:39:53 UTC 2021


On Saturday, 27 March 2021 at 15:09:20 UTC, Jan wrote:
> I just tried to get this example to work:
> https://dlang.org/spec/cpp_interface.html#using_d_classes_from_cpp
>
> It kept crashing for me with a 'privileged instruction' error 
> when the function 'bar' was executed. Finally I removed the 
> call to writefln and voilà it finally works.
>
> So why does it fail? I assumed the standard library functions 
> should all work.
> I'm compiling with "dmd -shared -m64 -debug" and link against a 
> C++ DLL that was built with VS2019. Should the D DLL not 
> contain everything to be self-sufficient to use it's entire 
> runtime functionality?
> And if not, what other functions might be problematic?

The example links objects statically. You may be experiencing 
additional challenges with crossing DLL boundaries. I have not 
yet used DLLs, but did you initialise the D runtime?

— Bastiaan.



More information about the Digitalmars-d-learn mailing list