On Oct 19, 2005, at 4:50 PM, mark at codesourcery dot com wrote:



------- Comment #7 from mark at codesourcery dot com 2005-10-19 20:50 -------
Subject: Re:  [3.4/4.0/4.1 Regression] ICE with  invert conditional
 containing throw

rguenth at gcc dot gnu dot org wrote:
------- Comment #6 from rguenth at gcc dot gnu dot org 2005-10-19 20:40 -------
Unfortunately we call into the middle-ends invert_truthvalue right in
cp/typeck.c:build_unary_op as we build the TRUTH_NOT_EXPR, so at the time we
reach the gimplifier we already crashed.

In that case, I think we should fix the middle end to handle this case;
it's not a very major change to the semantics of GIMPLE/GENERIC to
handle this case.  (I'm assuming that aren't massive ripple effects
throughout the middle-end...)

Mark did you look how long this bug as been here, it predates tree-ssa
by a year.  So I don't think we should change TRUTH_NOT_EXPR/COND_EXPR
semantics.  The C++ front-end needs just stop doing bad stuff like this.

-- Pinski

Reply via email to