On Fri, Sep 4, 2009 at 10:22 AM, Jeremie Pelletier<jerem...@gmail.com> wrote: > Jason House Wrote: > >> Don Wrote: >> >> > Interestingly since DMD has extern(C++), it ought to be possible to >> > convert a single module to D, and still link it in... >> >> extern(C++) support in D is nearly a joke. There are some big areas for >> improvement, such as support for non-virtual functions, or allowing use of >> new, ... It's unusable to the point that I can't connect D code to existing >> C++ or even write efficient wrappers. I've resorted to simply using >> extern(C) code in C++ and then wrappers in D to use those functions... > > From what I know it was mostly intended for interfaces, and it works wonders > when binding to COM code in Windows. A lot of the new features of recent > windows versions are only available through COM, extern(C++) makes it dead > easy to write their bindings.
You've been able to bind to COM interfaces in D for years. extern(C++) hasn't changed that, as far as I know.