https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124651

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=88232
   Last reconfirmed|                            |2026-03-26
            Summary|ICE with                    |ICE with
                   |-Winfinite-recursion        |-Winfinite-recursion due to
                   |                            |recursive rather than work
                   |                            |queue/list
     Ever confirmed|0                           |1

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So pass_warn_recursion::find_function_exit uses recusion rather than a work
queue.

With huge number of bbs it possible could cause huge stack usage.

So confirmed even without reproducing it.


  /* If no call to FNDECL has been found search all BB's successors.  */
  edge e;
  edge_iterator ei;
  FOR_EACH_EDGE (e, ei, bb->succs)
    if (find_function_exit (e->dest))
      return true;

Reply via email to