https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103755
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> --- Created attachment 52024 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52024&action=edit Alternative implementation This seems like a much simpler approach. This causes 22_locale/ctype/is/string/89728_neg.cc to fail for C++98/11/14 modes, because without 'if constexpr' the body of __try_use_facet creates dozens of errors, rather than just one from the current definition of use_facet. That isn't the end of the world, but it's a regression in diagnostic quality.