https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116646
--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #1) > I think since it is not dependent, it gets resolved right away. Right. A discarded statement (i.e. an untaken if-constexpr branch) is not instantiated in a template. But in a normal function, it's always compiled normally.