lkml.org 
[lkml]   [2012]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 3/3] checkpatch: Emit a warning when decimal values are used
On Wed, 31 Oct 2012 11:37:03 +0100
Pavel Machek <pavel@ucw.cz> wrote:

> Hi!
>
> > Linux kernel doesn't like decimals, say so.
>
> ?!
>
> Linux surely supports decimal constants, like "100". Did you mean
> "octal"?
>
> If you wanted to add warning for something... I never want to see
>
> #define CRAPPY_EMBEDDED_REGISTER ((0x1) << (0))
>
> again....

Joe means floating point. I suggest that the patchset be reworked,
using s/decimal/float/g.


The kernel does have floating point constants, in various graphics
drivers, iirc. They are used in places where the floatiness gets
handled at complation time. Along the lines of:

int foo = 1.1 * 2.2;

And I suppose that's an OK thing to do. We could instead do

int foo = 2; /* 1.1 * 2.2 */

but that's taking away a programmer convenience for no good reason.
It would be highly inconvenient if the "1.1" was in fact a #define in
some other file, or a Kconfig string.



That being said, I guess it's a worthwhile thing for checkpatch to warn
about. Hopefully the programmer will say "well thanks, but I meant to
do that".

A much better solution would be to arrange for the kernel to fail to
compile (or to fail to link) if floats are used. That way, people
could continue to use floats within their compile-time scalar
expressions without getting harrassed by checkpatch. But I don't know
how to arrange this.

hm.


\
 
 \ /
  Last update: 2012-11-01 00:21    [W:0.509 / U:0.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site