On Sat, Jan 03, 2026 at 12:10:45PM +0100, Vincent Mailhol wrote: > On 03/01/2026 at 11:02, Dan Carpenter wrote: > > Thanks Randy, for sending this to me. I'm on the sparse list, but > > I've been on vacation and haven't caught up with my email. > > Welcome back, hope you enjoyed your holidays! > > >I can easily silence this in Smatch. > > Thanks. I ran this locally, I can confirm that this silences the > warning. So: > > Tested-by: Vincent Mailhol <[email protected]> > > > diff --git a/check_unsigned_lt_zero.c b/check_unsigned_lt_zero.c > > index bfeb3261f91d..ac3e650704ce 100644 > > --- a/check_unsigned_lt_zero.c > > +++ b/check_unsigned_lt_zero.c > > @@ -105,7 +105,8 @@ static bool is_allowed_zero(struct expression *expr) > > strcmp(macro, "STRTO_H") == 0 || > > strcmp(macro, "SUB_EXTEND_USTAT") == 0 || > > strcmp(macro, "TEST_CASTABLE_TO_TYPE_VAR") == 0 || > > - strcmp(macro, "TEST_ONE_SHIFT") == 0) > > + strcmp(macro, "TEST_ONE_SHIFT") == 0 || > > + strcmp(macro, "check_shl_overflow") == 0) > > But, for the long term, wouldn't it better to just ignore all the code > coming from macro extensions instead of maintaining this allow-list? >
Of course, that idea occured to me, but so far the allow list is not very burdensome to maintain. I maybe should disable it for all macros unless the --spammy option is used... regards, dan carpenter
