The following avoids setting and not clearing an auto_bb_flag
on EXIT_BLOCK which we don't verify for such stale flags but
dump_bb_info still asserts on them.

Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed.

        PR tree-optimization/106913
        * tree-ssa-uninit.cc (warn_uninitialized_vars): Do not set
        ft_reachable on EXIT_BLOCK.
---
 gcc/tree-ssa-uninit.cc | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/gcc/tree-ssa-uninit.cc b/gcc/tree-ssa-uninit.cc
index 4a1c333d9cb..eae29f88f9d 100644
--- a/gcc/tree-ssa-uninit.cc
+++ b/gcc/tree-ssa-uninit.cc
@@ -1013,11 +1013,9 @@ warn_uninitialized_vars (bool wmaybe_uninit)
       if (ee)
        bb = ee->dest;
       else
-       {
-         bb = get_immediate_dominator (CDI_POST_DOMINATORS, bb);
-         if (!bb || bb->index == EXIT_BLOCK)
-           break;
-       }
+       bb = get_immediate_dominator (CDI_POST_DOMINATORS, bb);
+      if (!bb || bb->index == EXIT_BLOCK)
+       break;
     }
 
   FOR_EACH_BB_FN (bb, cfun)
-- 
2.35.3

Reply via email to