[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180418083012.3r4z7lwojgpw2lws@ltop.local>
Date: Wed, 18 Apr 2018 10:30:13 +0200
From: Luc Van Oostenryck <luc.vanoostenryck@...il.com>
To: Martin Wilck <mwilck@...e.com>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
"Martin K. Petersen" <martin.petersen@...cle.com>,
Linux SCSI List <linux-scsi@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Hannes Reinecke <hare@...e.de>,
James Bottomley <jejb@...ux.vnet.ibm.com>,
Xose Vazquez Perez <xose.vazquez@...il.com>,
Bart Van Assche <Bart.VanAssche@...disk.com>,
Ard Biesheuvel <ard.biesheuvel@...aro.org>,
Thomas Gleixner <tglx@...utronix.de>,
Jonathan Corbet <corbet@....net>,
Randy Dunlap <rdunlap@...radead.org>
Subject: Re: [PATCH v3 1/6] ilog2: create truly constant version for sparse
On Wed, Apr 18, 2018 at 10:12:54AM +0200, Martin Wilck wrote:
> On Tue, 2018-04-17 at 17:07 -0700, Linus Torvalds wrote:
> > On Tue, Apr 17, 2018 at 4:35 PM, Martin Wilck <mwilck@...e.com>
> > wrote:
> > > Sparse emits errors about ilog2() in array indices because of the
> > > use of
> > > __ilog2_32() and __ilog2_64(),
> >
> > If sparse warns about it, then presumably gcc with -Wvla warns about
> > it too?
>
> No, it doesn't (gcc 7.3.0). -> https://paste.opensuse.org/27471594
> It doesn't even warn on an expression like this:
>
> #define SIZE (1<<10)
> static int foo[ilog2(SIZE)];
>
> sparse 0.5.2 doesn't warn about that either. It emits "error: bad
> integer constant expression" only if ilog2 is used in an array
sparse supports VLAs at syntaxic level but not much more. Anything
needing directly or indirectly the array size will give this error.
-- Luc Van Oostenryck
Powered by blists - more mailing lists