This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/29487] Shared libstdc++ fails to link
- From: "amylaar at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 6 Feb 2007 10:18:30 -0000
- Subject: [Bug target/29487] Shared libstdc++ fails to link
- References: <bug-29487-276@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #32 from amylaar at gcc dot gnu dot org 2007-02-06 10:18 -------
(In reply to comment #30)
> Created an attachment (id=13011)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13011&action=view) [edit]
> proposed, untested patch
>
As far as I can tell, this patch takes care of the correctness issues,
however at the expense of optimization. Declaring a function as nothrow
will no longer enable optimizations in the callers that depend on the
the callee to be nothrow. Including analysis that finds the caller
to be nothrow, so again, exception handling information of libraries
is likely to increase.
I don't think it makes sense that you hijack the tree flag of the declaration
to be not about the declaration at all.
Andrew Pinski's observation in #12 that the root problem is to try to squish
two bits int one still stands. IMO the bit formerly known as
current_function_nothrow should be put into struct function, and then found
via cfun.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29487