Exceptions workaround for older systems that don't USE_COLLECT2

Jeffrey A Law law@cygnus.com
Tue Sep 8 02:42:00 GMT 1998


  In message < 19980906192417.D6125@tantalophile.demon.co.uk >you write:
  > On Sun, Sep 06, 1998 at 02:11:11AM -0700, Melissa O'Neill wrote:
  > > That's certainly a possible solution and likely the best compromise.
  > > The downside is that collect2 would do static constructor/destructor
  > > handling when NeXT's ld is happy to handle it.  And, since many C++
  > > programs don't use exceptions at all, the overhead of always using
  > > collect2's double-link strategy for those common cases seems a little
  > > burdensome.
  > 
  > If collect2 doesn't find anything it needs to handle itself (i.e.,
  > exceptions in this case), can it skip the second link and just use the
  > output of the first?
Yes.  If collect2 finds nothing to do, then it will not perform a second
link.

However, I'm not sure if the compiler & collect2 are set up to know
that the linker will handle some set of issues (ctors/dtors) and that
collect2 is supposed to handle another set of issues (EH frames).

I'd certainly prefer to have something that worked without user intervention
even if it was a little bit slower at link time.  Thus, my preference
would be to enable collect2 on NeXT boxes.

jeff



More information about the Gcc mailing list