On 7/31/2015 8:52 AM, Óscar Fuentes wrote:
> Edward Diener <eldlistmaili...@tropicsoft.com>
> writes:
>
>>> The code is far from being a minimal example, so I didn't look at it
>>> all, but I see that the class ex_exception is not exported (EX_VISIBLE
>>> expands to "... __visibility__("default")..." and you set
>>> -fvisibility=hidden in your compile command). If your class has virtual
>>> members (as it seems the case) this is asking for trouble.
>>>
>>
>> I am sorry but "this is asking for trouble" means absolutely nothing to
>> me on a technical level.
>
> Calling a virtual member requires an access to the vtable of the class.
> The vtable is defined on the dll that contains the class' code. If the
> class is not exported, the vtable is not exported. The errors you are
> seeing is the linker complaining about the missing vtable.

So you are saying that any class with virtual functions must have the 
class itself exported rather than the individual member functions when 
using gcc ? Because with VC++ that is not the case, so it must be an 
issue with gcc on Windows.



------------------------------------------------------------------------------
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to