https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100005
--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> --- No, no way. It is not an ODR violation, as it is an extension, it is perfectly fine if the inline and out of line definitions differ and they quite often do, e.g. in glibc.