http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56061
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> 2013-01-30 11:25:50 UTC --- (In reply to comment #3) > Does it make sense to allow "-O0 -flto" at all? The classical example why we want to support this is a static library which you'd compile and install with -O0 -g -fno-fat-lto-objects. At link time you can then either get a fully optimized program (use -On) or a fully debug enabled program (use -O0 -g). The other way around, compiling and installing with -O2 but then at link time use -O0 -g to get a debug build is more questionable (and most of the time a user error, unless -O0 was explicit at the link command line). Thus, eventually we'd want to provide an optimization level for link-time if there was none specified by doing some magic in combining the optimization levels used at compile-time. Possible combinations are endless, thus nobody has yet come up with a formal description of what would happen at link-time.