I am struggling with using two compilers. I don't liked to port all my code thus I tried to start porting only my base library.
The reason for using MinGW is the ability to have a more modern compiler and to enable me using more third party
The problem are probably different vtable layouts.
I have identified the problem with the vtable layout by creating a small sample application and DLL.
I have a pure abstract class and a implementing class declaration with it's member functions implemented in a cpp file.
If I keep the order of the methods in the implementing class declaration equal to these in the pure abstract class, then
all is fine. Otherwise I will effectively call wrong methods.
Does anyone have some solution to this problem, or is there a compiler switch (ABI)?
I am using __stdcall for all my methods and __cdecl for all my C functions (the one DLL that is compiled with MinGW).
Currently I run into these problems in my UnitTest code as this requires a more modern compiler due to the UnitTest
class library. But I'll expect similar problems when starting coding stuff using MinGW that is used from Open Watcom
or vica versa.