Simon Josefsson wrote: > Jim Meyering <j...@meyering.net> writes: > >> Instead, how about automating the extraction of the list of >> warnings from gcc sources or from some web page? Maybe you've >> already done something like that? >> Then we could add a rule to gnulib's Makefile that would ensure >> our list is up to date and run it periodically (albeit manually). > > This is unfortunately a big mess and I do it manually. As a result of > doing it manually, I'm pretty sure some warnings are missing and some > are repeated (due to being implied by other flags). The problems > include: > > 1) The gcc manual doesn't list all warning flags.
Automating it (even if not perfect) should be better than relying on a manual and tedious (and thus infrequently done) task whose results would otherwise tend to be out of date. > 2) The gcc --help=warnings doesn't list all warning flags, although it > is a different subset than 1). > > 3) Several of the warnings mentioned by gcc --help=warnings does not > apply to C. Yes, I noticed a few C++-only warnings. These can be removed via a hard-coded list that we'd have to keep up to date. Shouldn't be much work. > 4) Some warning flags imply other flags, which complicate things. > Should the redundant flag be removed or not? It is made even more > complicated since this may change between gcc versions. > > I think there were other problems as well. As a result, I gave up > trying to automate it and did it manually initially just to get some > warnings enabled. > > It would be nice to automate this. I'm not sure whether to use the > manual or the source code as the canonical source, although I lean > towards using the source code. I'm not sure how easy it would be to get > a list though, I recall that warnings were not handled uniformly within > gcc sources. gcc --help=warnings output is easy to get and parse, so it seems like a good starting point.