Hi,

I personally consider the fix for this this issue obvious: barring objections I mean to commit it mainline and branch later today.

Thanks,
Paolo.

///////////////////////
2013-05-08  Paolo Carlini  <paolo.carl...@oracle.com>

        PR tree-optimization/57200
        * tree-ssa-loop-niter.c (do_warn_aggressive_loop_optimizations):
        Only call inform if the preceding warning_at returns true.
Index: tree-ssa-loop-niter.c
===================================================================
--- tree-ssa-loop-niter.c       (revision 198703)
+++ tree-ssa-loop-niter.c       (working copy)
@@ -2553,10 +2553,11 @@ do_warn_aggressive_loop_optimizations (struct loop
     return;
 
   gimple estmt = last_stmt (e->src);
-  warning_at (gimple_location (stmt), OPT_Waggressive_loop_optimizations,
-             "iteration %E invokes undefined behavior",
-             double_int_to_tree (TREE_TYPE (loop->nb_iterations), i_bound));
-  inform (gimple_location (estmt), "containing loop");
+  if (warning_at (gimple_location (stmt), OPT_Waggressive_loop_optimizations,
+                 "iteration %E invokes undefined behavior",
+                 double_int_to_tree (TREE_TYPE (loop->nb_iterations),
+                                     i_bound)))
+    inform (gimple_location (estmt), "containing loop");
   loop->warned_aggressive_loop_optimizations = true;
 }
 

Reply via email to