[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: diffseq: Silence gcc warning
From: |
Bruno Haible |
Subject: |
Re: diffseq: Silence gcc warning |
Date: |
Sat, 27 May 2023 11:39:57 +0200 |
Paul Eggert wrote:
> > diffseq.h:424:36: warning: 'fxbest' may be used uninitialized
> > [-Wmaybe-uninitialized]
> > diffseq.h:431:36: warning: 'bxbest' may be used uninitialized
> > [-Wmaybe-uninitialized]
>
> What platform are you using and how did you configure and build?
To reproduce with gettext:
- On a glibc/x86_64 system (Ubuntu 22.04).
$ git clone git://git.savannah.gnu.org/gettext.git
$ unset GNULIB_SRCDIR
$ cd gettext
$ ./autopull.sh
$ sed -i -e '/pragma GCC diagnostic/d' gnulib/lib/diffseq.h
$ ./autogen.sh
- On Ubuntu 22.04, the default gcc is version 11.3.
$ mkdir build-gcc11
$ cd build-gcc11
$ ../configure CC=gcc CXX=g++ CPPFLAGS=-Wall 2>&1 | tee log1
$ make 2>&1 | tee log2
$ grep warning: log2
...
../../../gettext-tools/gnulib-lib/diffseq.h:441:36: warning: 'bxbest' may be
used uninitialized in this function [-Wmaybe-uninitialized]
../../../gettext-tools/gnulib-lib/diffseq.h:434:36: warning: 'fxbest' may be
used uninitialized in this function [-Wmaybe-uninitialized]
...
$ cd ..
- Put gcc 13.1.0 (built from source) in $PATH.
$ mkdir build-gcc13
$ cd build-gcc13
$ ../configure CC=gcc CXX=g++ CPPFLAGS=-Wall 2>&1 | tee log1
$ make 2>&1 | tee log2
$ grep warning: log2
...
../../../gettext-tools/gnulib-lib/diffseq.h:434:36: warning: 'fxbest' may be
used uninitialized [-Wmaybe-uninitialized]
../../../gettext-tools/gnulib-lib/diffseq.h:441:36: warning: 'bxbest' may be
used uninitialized [-Wmaybe-uninitialized]
...
$ cd ..
For diffutils, that was one or two weeks ago; I don't have the details
any more.
> I'd rather not litter the code with those ifdefs, as they cut into
> maintenance effort and could mask real bugs.
Sure; but that needs to be balanced against the desire to have a warning-free
build.
https://lists.gnu.org/archive/html/bug-gnulib/2023-05/msg00119.html
Bruno