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

vries at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vries at gcc dot gnu.org

--- Comment #11 from vries at gcc dot gnu.org 2011-11-22 14:51:37 UTC ---
I can't reproduce the problem from the description with 4.7, but I can
reproduce the problem from comment 4 with 4.7.

Tentative patch for test-case from comment 4:
...
Index: gcc/gimple-low.c
===================================================================
--- gcc/gimple-low.c (revision 181172)
+++ gcc/gimple-low.c (working copy)
@@ -680,6 +680,12 @@ block_may_fallthru (const_tree block)
     case CLEANUP_POINT_EXPR:
       return block_may_fallthru (TREE_OPERAND (stmt, 0));

+    case DO_STMT:
+      /* DO_STMT is part of cp-tree.def, so this should be moved to a
+     cp-specific file.  */
+      /* If DO_BODY doesn't fall thru, then DO_STMT doesn't either.  */
+      return block_may_fallthru (TREE_OPERAND (stmt, 1));
+      
     default:
       return true;
     }
...

Perhaps we should file a separate bug for the test-case from comment 4.

Reply via email to