[Bug target/29487] Shared libstdc++ fails to link
paolo dot bonzini at lu dot unisi dot ch
gcc-bugzilla@gcc.gnu.org
Tue Feb 6 08:27:00 GMT 2007
------- Comment #29 from paolo dot bonzini at lu dot unisi dot ch 2007-02-06 08:26 -------
Subject: Re: Shared libstdc++ fails to link
> Paolo, would you be able to undo the change to make "foo" not marked
> TREE_NOTHROW? IIUC, that would be different than the patch you posted
> in Comment #22, which appears to affect "bar".
My patch was related to Richi's comment when CCing me; the only patch I
found from me that was related to TREE_NOTHROW subtly changed the
semantics, and that patch sort of undone that change (I say "sort of"
because it takes a little more care actually).
> Also, I didn't quite
> understand your patch, in that it would appear to result in fewer
> functions being marked TREE_NOTHROW
It would result in more functions being marked TREE_NOTHROW, since those
functions will not go through the insn loop in
set_nothrow_function_flags if the front-end declared them nothrow.
I'm attaching an updated version of the patch, which passes some
internal (i.e. my brain and a small testcase using weak and nothrow)
sanity checks, but I've not tried in any real world situation. It's
actually an alternate fix for PR29323 which doesn't trigger this bug.
I'll let other people consider if it makes any sense since I'm not at
all expert in this area.
> I would think we want to remove the
> check for binds_local_p at the top of set_nothrow_function_flags?
Agreed, and we have to move it elsewhere. (See the upcoming patch).
Paolo
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29487
More information about the Gcc-bugs
mailing list