Hi, On 6 May 2012 11:14, Maciej W. Rozycki <macro@xxxxxxxxxxxxxx> wrote: > On Sun, 6 May 2012, Artem Bityutskiy wrote: > >> > And my opinion is based on experience. Please check the LMO archives for >> > why Ralf added this option in the first place -- many years ago. It's >> > probably recorded in the git repository too (I'm not sure if the option >> > was added before or after we moved away from CVS, but in any case old >> > change logs have been imported when our current repo was created). >> >> We need to figure out how to make -Werror be applied only when we do not >> have W=[123]. > > Hmm, that sounds better, however has the counter-intuitive side-effect of > lowering the severity of the warnings that are enabled even without > W=[123]. > > Modern versions of GCC have that selective -Wno-error=foo option and I > think it should be possible to build the precise list of warnings not to > choke on locally in arch/mips/Kbuild with little Makefile magic, falling > back to something sane for older GCC versions (I'm not sure exactly when > these selective options were added, certainly sometime between 4.1 and > 4.3). > > This will be a bit imperfect if any of these additional -Wfoo options > duplicate ones already added to KBUILD_CFLAGS in our top-level Makefile > (either explicitly or via -Wall), but that's about the best we can do. > I'll see if I can cook up something quickly. Hm, how about doing it the other way round, i.e. explicitly enable which warnings we want to treat as errors with -Werror=foo? That way we don't lower the severity when W=[123] and new default enabled warnings in gcc can't break the build any more, just better (or worse ;-) heuristics can. Jonas