https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116399
--- Comment #12 from Jonathan Wakely <redi at gcc dot gnu.org> --- Implementation-defined means the implementation must define it (and document it). If the implementation says the types are different, then they're different, and it's not a common range.