https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125187
--- Comment #5 from Oliver Schönrock <oschonrock at gmail dot com> --- I agree that we cannot rule out that it is a legit warning, and I did report it on fmt first: https://github.com/fmtlib/fmt/issues/4767 I am still not clear what you want for the "preprocessed source". You say is it a "one file source for LTO". Well no, not as I understand it. There are 3 TUs involved and 2 link stages. format.cc os.cc - the above 2 get compiled and then linked into libfmt.a ub.cpp Now libfmt.a gets linked with ub.o to produce the executable. So I tried passing `-save-temps` to g++ at the second link stage, and that produced no *.i* file(s). Unsurprisignly, because all the preprocessing and compiling has already happened, and we are just liking object files here. So I passed `-save-temps` to the compile stage of the above 3 TUs. and I am attaching format.cc.ii os.cc.ii ub.cpp.ii
