https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102350
--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> --- That would be non-conforming though, because source_location isn't a reserved name in C++17, so programs can use that as a (really dumb) macro name, which would then break the header.