Hello John,

Hello Walter,

So are you saying that XPCOM will work on Linux with D if only the
extern(Windows) was actually extern(C++) ?

Just to make this clear, I'm banking on that the fact that extern(C++)
on an interface should also remove the necessity to alias to a COM
interface on linux.  I am guessing that extern(C++) makes a vtable the
same as COM minus the extern(Windows) decoration.  If this is not
exactly true, then my hypothesis won't hold. :-)

-JJR



One more detail:

I just want to emphasize that solution to this is important primarily for the sake of compiler portability. At this point, dwt Browser code compiles fine with dmd (at this point, only with dmd), but with the hacks I've used, there are certainly no guarantees that it will ever work with other compilers. Finding a clean way to implement this is therefore fairly important, I think. And since I'd consider XPCOM/Mozilla a significant niche in software development - especially in crossplatform software development - I think this only emphasizes the necessity of getting this working nicely. :)

That said, I'll try to cook up an example using dmd 2.0 to see if this will work with extern(C++).

-JJR


Reply via email to