[Bug c++/49165] [4.3/4.4/4.5/4.6/4.7 Regression] ICE on for-loop/throw combination

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu May 26 08:30:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49165

--- Comment #6 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-05-26 08:25:26 UTC ---
       && !VOID_TYPE_P (TREE_TYPE (TREE_OPERAND (pred, 1)))
2578        && !VOID_TYPE_P (TREE_TYPE (TREE_OPERAND (pred, 2))))

shouldn't either none or both arms be VOID_TYPE_P?  So,

           && (!VOID_TYPE_P (TREE_TYPE (TREE_OPERAND (pred, 1)))
               || !VOID_TYPE_P (TREE_TYPE (TREE_OPERAND (pred, 2))))
       {
         gcc[_checking]_assert (!VOID_TYPE_P (TREE_TYPE (TREE_OPERAND (pred,
1))))
&& !VOID_TYPE_P (TREE_TYPE (TREE_OPERAND (pred, 2))))
...

would be better?



More information about the Gcc-bugs mailing list