lkml.org 
[lkml]   [2016]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Build failure: -Wno-unused-const-variable DNE on old GCC
    On Fri, Jan 08, 2016 at 12:31:54PM +1100, Ian Munsie wrote:
    > Excerpts from Brian Norris's message of 2016-01-08 10:02:25 +1100:
    > > > - It forces cxl developers to a higher standard. cxl has already had
    > > > more than it's fair share of incredibly difficult to debug issues,
    > > > so any way we can reduce the risk of errors going in makes our lives
    > > > (and our end-users lives) better.
    > >
    > > One problem with this point: not all warnings are under the purview of
    > > cxl developers. For instance, if I turn up warning verbosity (W=1), then

    (BTW, I think most of these files are currently clean with W=1, but not
    W=2)

    > > the *header* files start producing plenty of warnings. Should this break
    > > the build? Your code didn't change, and you can't fix those errors.
    >
    > That's a good point, but the specific warnings that we suppressed in the
    > new compiler are in drivers/misc/cxl/cxl.h, which is an internal header
    > that should only ever be included by the cxl driver. We do have some
    > headers elsewhere which are included by other drivers, the generic ppc
    > architecture code and userspace, but these are all warning free and
    > won't be affected by the -Werror when included from elsewhere.

    I was referring to when extra warnings are turned on, not just the
    default. So this fails spectacularly:

    $ export ARCH=powerpc
    $ make ppc64_defconfig
    $ make drivers/misc/cxl/api.o W=2
    CC [M] drivers/misc/cxl/api.o
    In file included from include/linux/bitops.h:36:0,
    from include/linux/kernel.h:10,
    from include/linux/list.h:8,
    from include/linux/pci.h:25,
    from drivers/misc/cxl/api.c:10:
    ./arch/powerpc/include/asm/bitops.h:226:94: error: declaration of 'ffs' shadows a built-in function [-Werror=shadow]
    In file included from include/linux/atomic.h:562:0,
    from include/linux/mutex.h:18,
    from include/linux/kernfs.h:13,
    from include/linux/sysfs.h:15,
    from include/linux/kobject.h:21,
    from include/linux/pci.h:28,
    from drivers/misc/cxl/api.c:10:
    include/asm-generic/atomic-long.h: In function 'atomic_long_read_acquire':
    include/asm-generic/atomic-long.h:45:231: error: nested extern declaration of '__compiletime_assert_45' [-Werror=nested-externs]
    In file included from include/linux/atomic.h:562:0,
    from include/linux/mutex.h:18,
    from include/linux/kernfs.h:13,
    from include/linux/sysfs.h:15,
    from include/linux/kobject.h:21,
    from include/linux/pci.h:28,
    from drivers/misc/cxl/api.c:10:
    include/asm-generic/atomic-long.h: In function 'atomic_long_set_release':
    include/asm-generic/atomic-long.h:57:1: error: nested extern declaration of '__compiletime_assert_57' [-Werror=nested-externs]
    In file included from include/linux/ktime.h:25:0,
    from include/linux/rcupdate.h:47,
    from include/linux/idr.h:18,
    from include/linux/kernfs.h:14,
    from include/linux/sysfs.h:15,
    from include/linux/kobject.h:21,
    from include/linux/pci.h:28,
    from drivers/misc/cxl/api.c:10:
    include/linux/jiffies.h: In function 'jiffies_to_timespec':
    include/linux/jiffies.h:422:131: error: declaration of 'jiffies' shadows a global declaration [-Werror=shadow]
    include/linux/jiffies.h:78:65: error: shadowed declaration is here [-Werror=shadow]
    In file included from include/linux/kernfs.h:16:0,
    from include/linux/sysfs.h:15,
    from include/linux/kobject.h:21,
    from include/linux/pci.h:28,
    from drivers/misc/cxl/api.c:10:
    [...many more failures...]
    cc1: all warnings being treated as errors
    make[1]: *** [drivers/misc/cxl/api.o] Error 1
    make: *** [drivers/misc/cxl/api.o] Error 2


    I doubt you plan to fix all those. So making -Werror configurable seems like
    the only way forward, then. (Glad you agreed!)

    Regards,
    Brian

    \
     
     \ /
      Last update: 2016-01-08 03:41    [W:2.576 / U:0.280 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site