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




Reply via email to