https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80536
--- Comment #7 from Marek Polacek <mpolacek at gcc dot gnu.org> --- I.e. I'm worried we could trigger the endless recursion also if we happen to call fold() on that expression via a different path than from save_expr.