https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116694
--- Comment #3 from polarlinda6 <polarlinda6 at 163 dot com> --- (In reply to Andrew Pinski from comment #2) > So GCC is counting `A<...>` and `A<...>::value` as `seperate template > instantiation depth` which is why you need 101. > > Since this is outside of the standard and the default depth is 900, this > should not be hit by many folks. I am trying to write a template library. It relies on `-ftemplate-depth=` to select the recursive way. This approach to GCC is counterintuitive. I can only recursively use half of `-ftemplate-depth=`. And I tried that `A<...>::type` is consistent with `-ftemplate-depth=`. Link: https://godbolt.org/z/993jcfxPa For the special behavior that occurs with `A<...>::value`, I hope to eliminate this inconsistency.