That said, the real core issue here is that the vtable layout is platform ABI, and the actual fix is for non-msvc compilers to generate code that conforms to the platform ABI.
I've been saying for a while now that C++ is held back by Microsoft's implementation of polymorphism; I posted the following here 6 months ago: