lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 16 Dec 2019 18:07:07 -0800
From:   Alexei Starovoitov <alexei.starovoitov@...il.com>
To:     Prashant Bhole <prashantbhole.linux@...il.com>
Cc:     Daniel Borkmann <daniel@...earbox.net>,
        Alexei Starovoitov <ast@...nel.org>,
        Andrii Nakryiko <andriin@...com>,
        Network Development <netdev@...r.kernel.org>,
        bpf <bpf@...r.kernel.org>
Subject: Re: [PATCH bpf-next] libbpf: fix build by renaming variables

On Mon, Dec 16, 2019 at 4:17 PM Prashant Bhole
<prashantbhole.linux@...il.com> wrote:
>
>
>
> On 12/16/19 11:02 PM, Alexei Starovoitov wrote:
> > On Mon, Dec 16, 2019 at 5:25 AM Daniel Borkmann <daniel@...earbox.net> wrote:
> >>
> >> On Mon, Dec 16, 2019 at 05:27:38PM +0900, Prashant Bhole wrote:
> >>> In btf__align_of() variable name 't' is shadowed by inner block
> >>> declaration of another variable with same name. Patch renames
> >>> variables in order to fix it.
> >>>
> >>>    CC       sharedobjs/btf.o
> >>> btf.c: In function ‘btf__align_of’:
> >>> btf.c:303:21: error: declaration of ‘t’ shadows a previous local [-Werror=shadow]
> >>>    303 |   int i, align = 1, t;
> >>>        |                     ^
> >>> btf.c:283:25: note: shadowed declaration is here
> >>>    283 |  const struct btf_type *t = btf__type_by_id(btf, id);
> >>>        |
> >>>
> >>> Fixes: 3d208f4ca111 ("libbpf: Expose btf__align_of() API")
> >>> Signed-off-by: Prashant Bhole <prashantbhole.linux@...il.com>
> >>
> >> Applied, thanks!
> >
> > Prashant,
> > Thanks for the fixes.
> > Which compiler do use?
>
> gcc (GCC) 9.1.1 20190503 (Red Hat 9.1.1-1)

I've tried devtoolset-8 and devtoolset-9.
Which is
gcc version 9.1.1 20190605 (Red Hat 9.1.1-2) (GCC)

make clean;make doesn't produce that warning.
make V=1 tells me:
gcc -O2 -W -Wall -Wextra -Wno-unused-parameter
-Wno-missing-field-initializers -Wbad-function-cast
-Wdeclaration-after-statement -Wformat-security -Wformat-y2k
-Winit-self -Wmissing-declarations -Wmissing-prototypes
-Wnested-externs -Wno-system-headers -Wold-style-definition -Wpacked
-Wredundant-decls -Wstrict-prototypes -Wswitch-default -Wundef
-Wwrite-strings -Wformat -Wstrict-aliasing=3 -fno-strict-aliasing
-Wno-shadow
... -c -MMD -o gen.o gen.c

For some odd reason this check is failing for me
$ tools/scripts/Makefile.include
ifneq ($(filter 3.%,$(MAKE_VERSION)),)  # make-3
EXTRA_WARNINGS += -fno-strict-aliasing
EXTRA_WARNINGS += -Wno-shadow
else
EXTRA_WARNINGS += -Wshadow
endif

$ make -v
GNU Make 3.82

Not sure how to fix this.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ