https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125490
--- Comment #1 from Drea Pinski <pinskia at gcc dot gnu.org> --- clang might be wrong here due to the way concepts work. GCC turns that concept into false though. So in summary: GCC and MSVC both handle it as being diagnostic at instantiation time. clang and EDG both diagnostic it at definition time.
