[patch] Fix PR c++/28250: ICE with invalid catch

Mark Mitchell mark@codesourcery.com
Fri Jul 7 16:19:00 GMT 2006


Volker Reichelt wrote:

> The ICE is triggered via pushdecl or push_template_decl (I forgot which
> one) which are only called if processing_template_decl is set.
> expand_start_catch_block seems to handle the case decl == error_mark_node
> gracefully. I could fix push* to handle error_mark_nodes, but I thought it
> would be better not to propagate the error_mark_nodes in order to prevent
> later failures.

I think we should fix push*.  The right representation internally here
is that the thing caught is an error, not ...  Another alternative would
be to discard the entire catch block in this case.

-- 
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713



More information about the Gcc-patches mailing list