This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils 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: ld goes into infinite loop


On Sat, Nov 24, 2001 at 05:04:51AM -0600, Berk, Murat wrote:
> I partially solved the problem. I made the fully inlined class non-inline.
> 
> class OSS_WorkTask : public OSS_Task
> {
> ...
> }
> 
> So it makes the following entires not to be exported from the shared
> libraries
> which has classes derived from OSS_WorkTask.
> 
> __tf12OSS_WorkTask;
> __ti12OSS_WorkTask;
> __vt_12OSS_WorkTask;
> 
> or after c++filt
> OSS_WorkTask type_info function;
> OSS_WorkTask type_info node;
> OSS_WorkTask virtual table;
> 
> This prevents linker going into infinte loop when more than 2 shared
> libraries used (which had the above entires) to create a new shared library.
> 
> All shared library version scripts are in the form
> 
> VERSION {
> VERS_7.1 {
> global:
> __tf12OSS_WorkTask;
> __ti12OSS_WorkTask;
> __vt_12OSS_WorkTask;
> .... a lot of more entries (~2500)
> local:
> *;
> };
> }
> 
> I do not know how can I reproduce it into a smaller testcase.
> 
> 

I believe you did see a linker bug. But if we can't reproduce it, I am
afraid there is very little we can help you.


H.J.


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