https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85678
--- Comment #8 from Wilco <wilco at gcc dot gnu.org> --- (In reply to David Binderman from comment #7) > (In reply to David Brown from comment #0) > > Surely it is time to make "-fno-common" the default, at least when a modern > > C standard is specified indicating that the code is modern? People who need > > the old behaviour can always get it with "-fcommon". > > Interestingly, use of -std=c89 or -std=gnu89 doesn't also switch on -fcommon > to get old behaviour. > > So use of compiler flag indicating to compile code to old standards > means implicit use of *new* standard for common. > > Looks odd to me. Possible bug ? If required, it would be feasible to keep the old behaviour for C89 indeed, however -fno-common is not incompatible with C89 (embedded C compilers may not even support -fcommon).