This is the mail archive of the gcc-patches@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]

Re: #pragma interface (was Re: ia64 c++ abi exceptionhandling)


>>>>> "Jason" == Jason Merrill <jason@redhat.com> writes:

    Jason> The xlC prelinker does the right thing for AIX, but it's
    Jason> not really applicable to any other target, so I don't see
    Jason> there being a GNU version any time soon.

That's all true.  I actually had in mind a more general pre-linking
strategy, along the lines of what EDG does, where you actually conjure
up what you need at link-time.  You can actually do the AIX thing in
a.out by creating little .o's on the side and then just having the
prelinker pick the ones it needs...

    >> I agree with Benjamin: these #pragmas are confusing, and have
    >> lead to way too many weird bugs in the compiler itself.

    Jason> Really?  I've always found them ugly, but fairly clear.  I

They always blew my mind.  Whenever I break them, I can never figure
out what they were supposed to do in the first place.  But, that
doesn't prove much, I guess... :-)

    Jason> agree with Benjamin that a better solution is to just move
    Jason> virtuals out of line so that the heuristic will work,
    Jason> though--I repent my statement quoted above.

Good, well then we're all Turing equivalent at this point.  We can
agree to agree, even if we agree to disagree as to why we agree! :-)

    >> But, in fairness to your key point, the question is whether
    >> anyone will ever implement the pre-linker, and whether or not
    >> the #pragmas need to stay until that point.

    Jason> Unfortunately, we have a major customer who relies on the
    Jason> #pragmas because one of their targets is i960-b.out.

Again for the studio audience, "we have a major customer" is not, in
of itself, a good reason to keep something in an FSF release -- unless
the `we' refers to the FSF.  It is, of course, evidence that someone
somewhere finds the feature useful.

    Jason> My pending linkage rewrite will reduce the maintenance
    Jason> impact of these #pragmas by doing away with interface_*,
    Jason> though I'm setting it aside until 3.0 is out.

Cool.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com


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