On Fri, Dec 12 2014, Joe Perches <[email protected]> wrote:

> On Fri, 2014-12-12 at 11:51 +0100, Rasmus Villemoes wrote:
>> Since fe7c36c7 ("Makefile: Build with -Werror=date-time if the
>> compiler supports it"), use of __DATE__, __TIME__, __TIMESTAMP__ has
>> been disallowed. This hasn't prevented a few new users from creeping
>> in. Make checkpatch complain.
>> +
>> +# Use of __DATE__, __TIME__, __TIMESTAMP__ is not allowed
>> +            if ($line =~ m/\b__(?:DATE|TIME|TIMESTAMP)__\b/) {
>> +                ERROR("DATETIME", "Do not use the macros __DATE__, __TIME__ 
>> and __TIMESTAMP__\n" . $herecurr)
>
> I'd probably add that adjacent to the existing __FUNCTION__
> test near line 5000 and make the test show the specific macro
> used.

Yeah, that makes sense. I didn't really know where to put it.

> Maybe add __LINE__ and __FILE__ as a separate --strict test too.

Are those also disallowed, or is it just that new users shouldn't be
added?

> Also the error message should should show the specific macro and
> if __DATE__ and __TIME__ are on the same line, the error should
> be emitted twice.
>
> Maybe:
>               while ($line =~ /\b(__(?:DATE|TIME|TIMESTAMP)__)\b/g) {
>                       ERROR("DATETIME",
>                             "Do not use the $1 macro\n" . $herecurr);
>               }

Looks good to me. I could resend, but can't really claim
authorship. Joe, mind taking it from here?

Rasmus

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to