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;