This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: unsatisfied virtual thunks PR4122
On Wed, Dec 12, 2001 at 10:49:19AM -0600, Robert Boehne wrote:
> Harri:
>
> Have a look at PR4122. This is a regression from 2.95.x and is present
> in all 3.x versions. I get this with libsigc++ 1.1 on AIX using the
> > /usr/ccs/bin/ld: Unsatisfied symbols:
> > virtual thunk to
> > CosNaming::_impl_BindingIterator::~_impl_BindingIterator()(first referenced
> > in NamingContext_i.o) (data)
> > virtual thunk to PortableServer::ServantBase::_downcast()(first referenced
> > in NamingContext_i.o) (data)
Hi,
In PR 3536, which looks similar:
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=3536&database=gcc
The following patch was proposed for cp/method.c:
===================================================================
Hello,
The thunks were actually generated and found in the object files but they
were not public so linking failed. Adding the three lower lines to the
function make_thunk() in /gcc/cp/method.c seems solve problem 3536.
Line 361:
/* And neither is it a clone. */
DECL_CLONED_FUNCTION (thunk) = NULL_TREE;
DECL_EXTERNAL (thunk) = 1;
+ /* Make the thunk public unless it is for a destructor */
+ if (!DECL_DESTRUCTOR_P (func_decl))
+ TREE_PUBLIC (thunk) = 1;
Regards,
Thomas
===================================================================
Could you try it and see if it solves the problem?
--
Craig Rodrigues
http://www.gis.net/~craigr
rodrigc@mediaone.net