This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: Dynamic loader and virtual functions
- From: Chris Hennes <chennes at sukrahelitek dot com>
- To: bjensen at fastmail dot fm
- Cc: gcc-help at gcc dot gnu dot org
- Date: Sat, 17 Aug 2002 08:16:50 -0500
- Subject: Re: Dynamic loader and virtual functions
- References: <3D5E4178.6080507@sukrahelitek.com> <3D5E4760.D96E3EFB@fastmail.fm>
- Reply-to: chennes at sukrahelitek dot com
Bjorn et. al,
Thanks for the input, and for the link. Unfortunately, binary
compatibility does not seem to be the issue here. This problem appears
even if I change the class to not inherit from anything. I add a virtual
function in the header and poof! dlsym can't find the extern "C" function.
What's really strange is that this new class is being instantiated as a
member of the main class for this plugin. In each plugin, this main
class is derived from a plugin base class in the main application which
contains virtual functions. The plugin class overrides these virtual
function (successfully), and this has no effect on dlsym finding the
LoadPlugin function. Why is this suddenly appearing when I add a new
class with virtual functions to the .so???
Chris