> I don't see flag_iso as relevant here (since the macros are in the > implementation namespace). The definitions could reasonably be restricted > to c_dialect_cxx (), though, given that they are specifically for use by > libstdc++ (and it's easier to add a macro later for C if needed, than to > remove one after adding it).
They reflect a previous check in libstdc++ to remove __int128 specializations for non-ISO cases. Now, though, libstdc++ doesn't know which types are needed for pointers and which aren't, so the check was moved to inside gcc, which does know.