Re: [PATCH] iio: magnetometer: Only declare ACPI table when ACPI is enable

From: Matthias Kaehlcke
Date: Thu Jul 06 2017 - 12:42:46 EST


El Sat, Jul 01, 2017 at 01:11:12PM +0100 Jonathan Cameron ha dit:

> On Thu, 29 Jun 2017 14:51:56 +0200
> Linus Walleij <linus.walleij@xxxxxxxxxx> wrote:
>
> > On Tue, Jun 27, 2017 at 2:25 AM, Matthias Kaehlcke <mka@xxxxxxxxxxxx> wrote:
> >
> > > Don't inflate the kernel size with data that isn't used. The conditional
> > > declaration also fixes the following warning when building with clang:
> > >
> > > drivers/iio/magnetometer/ak8975.c:704:36: error: variable 'ak_acpi_match'
> > > is not needed and will not be emitted
> > > [-Werror,-Wunneeded-internal-declaration]
> > >
> > > Signed-off-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> >
> > Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
> >
> > Yours,
> > Linus Walleij
> Applied to the togreg branch of iio.git and pushed out as testing
> for the autobuilders to play with it.

Thanks!

> I'm curious though... Can the compiler not optimize this away?
> I'd always assumed the main reason for these warnings was that the
> presence of unused data might represent a bug rather than it actually
> making any difference to the size...

clang actually optimizes it away: "variable 'ak_acpi_match' is not
needed and will not be emitted", my argument about inflating the
kernel size is not valid.