This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: unsatisfied virtual thunks PR4122


Craig:

I will definitely check this out.  I've seen this crop up on numerous
occasions so it is important (to me) to get this fixed.

Thanks,

Robert

Craig Rodrigues wrote:
> 
> 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

-- 
Robert Boehne             Software Engineer
Ricardo Software   Chicago Technical Center
TEL: (630)789-0003 x. 238
FAX: (630)789-0127
email:  rboehne@ricardo-us.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]