https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118349
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Eric Gallager from comment #0) > for users who are okay with template usage, but just > don't want it to get out of hand. What does "get out of hand" mean? What unwanted consequence would you be preventing with this check? The point of imposing a limit is so that buggy code with infinite recursion will (hopefully) stop compiling before the system runs out of memory. So it's a check to make accidental infinite recursion fail sooner, rather than grind to a halt later. I'm not aware of a good use case for "I want some templates, but not too much".