https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85514
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- clang started to accept this code in clang 5.0.0. ICC started to accept it between 13 and 16. MSVC started to accept it in v19.23 (19.23.28105.4). So I think this one can be closed as invalid.