http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49081
--- Comment #6 from Roger Jeurninck <Roger.Jeurninck at home dot nl> 2011-05-20 19:44:04 UTC --- Thanks for the swift reponse. Let me explain this a bit. In our build process we compile thousands of files and the outcome should be stable. If we do adapt a file we try to minimize the number of modified files in the build output as we need to do a lot of testing for our products. The provided reproduction scenario has been reduced from a situation in our build in which adding a (unused) typedef in a headerfile results in a a different output of the compiled c-source (which of course includes the headerfile). Obviously the unused typedef's won't end up in the object file, but than the changed string literal symbols is an unwanted side-effect.