On Wed, Nov 17, 2021 at 01:44:23AM +0000, brian m. carlson wrote: > > Do most compilers understand -std=gnu99? It seems like we're breaking > > the out-of-the-box build for everything that isn't gcc or clang. > > I'm pretty sure -Wall is GCC- and clang-specific, as is -Wl,-rpath, so I > think we've already crossed that bridge. There are places in > config.mak.uname where they're specifically overridden for that reason. That's a good point. I guess we don't really have good data on how many people will be (newly) affected either way. > > I understand that older versions of gcc (prior to 5.1.0, from my > > digging) default to gnu89, and so they would be broken _without_ this. > > So it is a tradeoff one way or the other. But somehow this seems > > backwards to me. We should assume that modern compilers support C99 out > > of the box, and put the burden on older ones to trigger C99 support in > > whatever non-portable way they need. > > We'll have to adjust the CI job that builds with GCC 4.8, but I can do > that. I just am not eager to hear complaints from people that it > doesn't work out of the box, especially since CentOS 7 is going to hit > this case. Nor am I. I wonder if there's a way we can make it work out of the box everywhere. Using detect-compiler more widely would be one way to do that, though that's a bigger change to the Makefile in general. I kind of wonder if we could just assume in config.mak.uname that Linux will always have a compiler that understands -std=gnu99. -Peff