------- 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

Reply via email to