Bug#811574: FTBFS with GCC 6: statement indented as if it were guarded by
Package: glibc
Version: 2.21-6
Severity: minor
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-6 gcc-6-misleading-indentation
This package fails to build with GCC 6. GCC 6 has not been released
yet, but it's expected that GCC 6 will become the default compiler for
stretch.
Note that only the first error is reported; there might be more. You
can find a snapshot of GCC 6 in experimental. To build with GCC 6,
you can set CC=gcc-6 CXX=g++-6 explicitly.
(I'm aware glibc uses GCC 4.x to build, which is why I set the
severity to minor. GCC 4.9 was really GCC 6 in my chroot.)
> sbuild (Debian sbuild) 0.67.0 (26 Dec 2015) on dl580gen9-02.hlinux
...
> x86_64-linux-gnu-gcc-4.9 udiv_qrnnd.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Werror -Winline -Wno-error=undef -Wundef -Wwrite-strings -fmerge-all-constants -frounding-math -g -pipe -Wstrict-prototypes -ftls-model=initial-exec -isystem /<<PKGBUILDDIR>>/debian/include -I../include -I/<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib -I/<<PKGBUILDDIR>>/build-tree/amd64-libc -I../sysdeps/unix/sysv/linux/x86_64/64 -I../sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/x86 -I../sysdeps/unix/sysv/linux/wordsize-64 -I../sysdeps/x86_64/nptl -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux -I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/x86_64 -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/x86_64/64 -I../sysdeps/x86_64/fpu/multiarch -I../sysdeps/x86_64/fpu -I../sysdeps/x86/fpu/include -I../sysdeps/x86/fpu -I../sysdeps/x86_64/multiarch -I../sysdeps/x86_64 -I..
> /sysdeps/x86 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64/wordsize-64 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/wordsize-64 -I../sysdeps/ieee754 -I../sysdeps/generic -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/6/include -isystem /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed -isystem /<<PKGBUILDDIR>>/debian/include -D_LIBC_REENTRANT -include /<<PKGBUILDDIR>>/build-tree/amd64-libc/libc-modules.h -DMODULE_NAME=libc -include ../include/libc-symbols.h -o /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/udiv_qrnnd.o -MD -MP -MF /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/udiv_qrnnd.o.dt -MT /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/udiv_qrnnd.o
> In file included from ../stdlib/strtoul_l.c:27:0,
> from ../sysdeps/wordsize-64/strtoul_l.c:6:
> ../stdlib/strtol_l.c: In function '____strtoul_l_internal':
> ../stdlib/strtol_l.c:360:9: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
> cnt < thousands_len; })
> ^~~
>
> ../stdlib/strtol_l.c:357:9: note: ...this 'for' clause, but it is not
> && ({ for (cnt = 0; cnt < thousands_len; ++cnt)
> ^~~
>
> x86_64-linux-gnu-gcc-4.9 ../sysdeps/x86_64/lshift.S -c -isystem /<<PKGBUILDDIR>>/debian/include -I../include -I/<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib -I/<<PKGBUILDDIR>>/build-tree/amd64-libc -I../sysdeps/unix/sysv/linux/x86_64/64 -I../sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/x86 -I../sysdeps/unix/sysv/linux/wordsize-64 -I../sysdeps/x86_64/nptl -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux -I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/x86_64 -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/x86_64/64 -I../sysdeps/x86_64/fpu/multiarch -I../sysdeps/x86_64/fpu -I../sysdeps/x86/fpu/include -I../sysdeps/x86/fpu -I../sysdeps/x86_64/multiarch -I../sysdeps/x86_64 -I../sysdeps/x86 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64/wordsize-64 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/wordsize-64 -I../sysd
> eps/ieee754 -I../sysdeps/generic -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/6/include -isystem /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed -isystem /<<PKGBUILDDIR>>/debian/include -D_LIBC_REENTRANT -include /<<PKGBUILDDIR>>/build-tree/amd64-libc/libc-modules.h -DMODULE_NAME=libc -include ../include/libc-symbols.h -DASSEMBLER -pipe -O2 -g -Wa,--noexecstack -o /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/lshift.o -MD -MP -MF /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/lshift.o.dt -MT /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/lshift.o
> x86_64-linux-gnu-gcc-4.9 ../sysdeps/x86_64/rshift.S -c -isystem /<<PKGBUILDDIR>>/debian/include -I../include -I/<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib -I/<<PKGBUILDDIR>>/build-tree/amd64-libc -I../sysdeps/unix/sysv/linux/x86_64/64 -I../sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/x86 -I../sysdeps/unix/sysv/linux/wordsize-64 -I../sysdeps/x86_64/nptl -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux -I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/x86_64 -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/x86_64/64 -I../sysdeps/x86_64/fpu/multiarch -I../sysdeps/x86_64/fpu -I../sysdeps/x86/fpu/include -I../sysdeps/x86/fpu -I../sysdeps/x86_64/multiarch -I../sysdeps/x86_64 -I../sysdeps/x86 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64/wordsize-64 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/wordsize-64 -I../sysd
> eps/ieee754 -I../sysdeps/generic -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/6/include -isystem /usr/lib/gcc/x86_64-linux-gnu/6/include-fixed -isystem /<<PKGBUILDDIR>>/debian/include -D_LIBC_REENTRANT -include /<<PKGBUILDDIR>>/build-tree/amd64-libc/libc-modules.h -DMODULE_NAME=libc -include ../include/libc-symbols.h -DASSEMBLER -pipe -O2 -g -Wa,--noexecstack -o /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/rshift.o -MD -MP -MF /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/rshift.o.dt -MT /<<PKGBUILDDIR>>/build-tree/amd64-libc/stdlib/rshift.o
> In file included from ../sysdeps/wordsize-64/strtol_l.c:6:0:
> ../stdlib/strtol_l.c: In function '____strtol_l_internal':
> ../stdlib/strtol_l.c:360:9: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
> cnt < thousands_len; })
> ^~~
>
> ../stdlib/strtol_l.c:357:9: note: ...this 'for' clause, but it is not
> && ({ for (cnt = 0; cnt < thousands_len; ++cnt)
> ^~~
>
--
Martin Michlmayr
Linux for HPE Helion, Hewlett Packard Enterprise
Reply to: