Hi Bruno, On 1/1/21 1:56 PM, Bruno Haible wrote: > Hi Berny, > > Bernhard Voelker wrote in > <https://lists.gnu.org/archive/html/bug-gnulib/2020-12/msg00090.html>: >> Newer GCC complains about this test: >> >> $ make test-getgroups.o V=1 >> depbase=`echo test-getgroups.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ >> gcc -DHAVE_CONFIG_H -DEXEEXT=\"\" -I. -I.. -DIN_FINDUTILS_GNULIB_TESTS=1 >> -I. -I. -I.. -I./.. -I../gl/lib -I./.. \ >> /gl/lib -g -O2 -MT test-getgroups.o -MD -MP -MF $depbase.Tpo -c -o >> test-getgroups.o test-getgroups.c &&\ >> mv -f $depbase.Tpo $depbase.Po >> In file included from test-getgroups.c:31: >> test-getgroups.c: In function 'main': >> test-getgroups.c:65:11: warning: argument 1 value -1 is negative >> [-Wstringop-overflow=] >> 65 | ASSERT (getgroups (-1, NULL) == -1); >> | ^~~~~~~~~~~~~~~~~~~~ > > I can't reproduce this with a testdir created through > ./gnulib-tool --create-testdir --dir=... --single-configure getgroups > and GCC 10.2.0, even with '-Wall' (whereas the GCC invocation that you show > does > not invoke any warning options!): yes, this shows up without -Wall here.
> $ gcc -DHAVE_CONFIG_H -I. -I.. -DGNULIB_STRICT_CHECKING=1 > -DIN_GNULIB_TESTS=1 -I. -I. -I.. -I./.. -I../gllib -I./../gllib -g -O2 -c > test-getgroups.c -Wall > (no diagnostics) I reproduced again without -Wall both on my openSUSE Tumbleweed system with gcc (SUSE Linux) 10.2.1 20201202 [revision e563687cf9d3d1278f45aaebd03e0f66531076c9] and on Fedora (in a docker container) with gcc (GCC) 10.2.1 20201125 (Red Hat 10.2.1-9) So it may be an issue with the 10.2.1 version > Also, it's strange that this warning reports to come from -Wstringop-overflow > — whereas 'getgroups' is not a string operation> > So, to me it looks like a bug in the particular GCC version that you are > using. > > Under regular circumstances, I would consider adding a #pragma GCC diagnostic, > as you suggest, but not under these circumstances. I'm not sure how to proceed from here. Have a nice day, Berny