egcc 1.1.2 outputs global object constructors as local (C static) symbols
VALETTE Eric
valette@crf.canon.fr
Fri Apr 9 00:19:00 GMT 1999
>>>>> "Martin" == Martin v Loewis <martin@mira.isdn.cs.tu-berlin.de> writes:
>> Due to a change in the global constructor/destructor symbol
>> export generation, Its harder to make generation of
>> constructors table by hand...
Martin> Yes; this change was intentional, and it fixed a real bug. That it
Martin> broke your 'interesting' build process is unfortunate, but
Martin> unavoidable.
I want to understand. I can fix it myself anyway but would like to understand
what the problem was ...
Martin> If you absolutely need this to work, you have to set-up a
Martin> cross-compiler to a target that doesn't support initializer sections.
I will better patch egcc...
Martin> If this answer does not satisfy you, you'll have to explain in more
Martin> detail *why* you want to put the constructor functions into a table -
Martin> the linker already does this for you, in a way that interoperates with
Martin> the crtstuff provided by egcs.
Side remarks : when you are building embbedded system written in C++,
trust me, that you do not want to let the linker make things behing
your back and that the "system" crt0 has nothing to do with application
crt0...
So, I hope you realize that you may not have the FULL picture of C++
use in mind despite the tone of your mail (that BTW gives 0 info except
yes itwas changed...)
Thanks for answering anyway,
--
__
/ ` Eric Valette
/-- __ o _. Canon CRF
(___, / (_(_(__ Rue de la touche lambert
35517 Cesson-Sevigne Cedex
FRANCE
Tel: +33 (0)2 99 87 68 91 Fax: +33 (0)2 99 84 11 30
E-mail: valette@crf.canon.fr
More information about the Gcc-bugs
mailing list