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]

PR4122 Regression from 2.95 in 3.0.2 (Was: Re: AIX g++ 3.0.2 Undefined symbol: virtual thunk to...)


David:

I've looked into this some more and it appears to be a known problem
PR4122, and a regression from 2.95.3, and is not AIX specific.
In my case, libsigc++-1.1.4, the problem does not have the
workaround alluded to in GNATS.
ref:
http://gcc.gnu.org/ml/gcc-bugs/2001-08/msg00919.html

I have run into this with other code as well, I hate to beg,
but could a fix for this be considered for 3.0.3?

Thanks,

Robert


David Edelsohn wrote:
> 
> >>>>> Robert Boehne writes:
> 
> Robert> Now I'm baffled.  If g++ isn't generating them, how do they get
> Robert> into my object code?  Doing an nm of this library I get 68 lines
> Robert> that match "thunk".
> Robert> nm ./sigc++/.libs/libsigc.a | c++filt | grep thunk
> Robert> 000000001004b668 t .non-virtual thunk to std::iostream::~iostream()
> Robert> <SNIP>
> Robert> 0000000020010e48 d virtual thunk to std::strstream::~strstream()
> Robert> 0000000020010ca4 d virtual thunk to SigC::Object::~Object()
> Robert> 0000000020010c98 d virtual thunk to
> Robert> SigC::Object::~Object()
> 
> Robert> Are you saying that some other compiler is generating these?
> Robert> My suspicion is that it is related to having a compiler configured
> Robert> with "--disable-shared --disable-threads" so I'm working on
> Robert> re-bootstrapping gcc with "--enable-threads=posix --enable-shared".
> Robert> I'm not sure what a "thunk" is so the link error doesn't help
> Robert> me much.
> 
>         I do not know what a virtual thunk is.
> 
>         Thunks are described on many websites.  It is a piece of code to
> fix up the "this" pointer for multiple inheritance.
> 
>         Maybe some part of GCC is not obeying #ifdef ASM_OUTPUT_MI_THUNK.
> 
> David

-- 
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]