On Sat, May 19, 2018 at 12:17:25AM +0100, Ramsay Jones wrote: > > > On 18/05/18 23:23, Linus Torvalds wrote: > > On Fri, May 18, 2018 at 2:56 PM Ramsay Jones <ramsay@xxxxxxxxxxxxxxxxxxxx> > > wrote: > > > >> /usr/include/x86_64-linux-gnu/sys/sysmacros.h:79:1: warning: constant > > 0xfffff00000000000u is so big it is unsigned long > >> /usr/include/x86_64-linux-gnu/sys/sysmacros.h:80:1: warning: constant > > 0x00000ffffff00000u is so big it is unsigned long > > > > I do wonder if we should just remove this warning, at least for files that > > have been looked up using the system include directories. > > I briefly thought about only warning if -Wsystem-headers was given. > Hmm, maybe I should look at that some more (I suspected that it would > open a can of worms ... :-D ). It shouldn't be hard but yes, for the moment, there is nothing that can answer "is this file a system file or not?". > > This warning keeps on happening, and nobody ever seems to much care. And > > that's because it often warns for code that is "obviously correct" (like > > your example), which is a mark of a bad warning. > > yes, good point. > > > It's not like the implicit type changes ever drops bits, or even does > > anything truly surprising. > > > > The "do_warn & 2" case where C99 and C90 compilers actually have different > > types, now _that_ is worth warning for. > > > > And we do warn for actual lost bits in implicit casts, so if people use a > > constant that is too large in a context where it then loses bits, we give > > that other warning > > > > warning: cast truncates bits from constant value (abc becomes xyz) > > > > so the value of the odd constant sizing warning is debatable. Maybe we > > could move it to pedantic warnings? > > OK, I'll take a look. Thanks! Good :) -- Luc -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html