Thread overview
Interfacing with C++
Nov 01, 2014
Shriramana Sharma
Nov 01, 2014
Kagamin
Nov 02, 2014
Kagamin
November 01, 2014
Hello. I really really need to be able to interface well with a C++ library which contains lots of classes if I am going to further invest time into D.

Now from the http://dlang.org/cpp_interface I find out the current status of built-in C++ interfacing support. I'm working on Linux so using the COM support is not an option for me (whatever COM may be!).

A few queries:

1) How mature is the SWIG support for wrapping a library into D? Specifically does the above SWIG support take advantage of the built-in C++ support features like connecting directly to virtual functions?

2) Is there any further work underway to implement support for static and non-virtual class member functions? Or is this not at all possible? If so, why?

3) The page speaks about having to integrate an entire C++ compiler into the D compiler. Could the usage of libclang help here in having to avoid writing a new C++ compiler module or am I talking through my (non-existent) hat?

-- 
Shriramana Sharma ஶ்ரீரமணஶர்மா श्रीरमणशर्मा

November 01, 2014
You can see http://wiki.dlang.org/DIP61 and linked discussions. Static and virtual functions probably work. Constructors and destructors probably don't. What's difficult is multiple inheritance. The information on C++ support is largely considered private to the compiler team.
November 02, 2014
D.learn is about basics of D. Interfacing with C++ is an advanced topic, with feature set in flux, so I'd suggest to ask about it in http://forum.dlang.org/group/digitalmars.D group.