#1012979 libgtextutils: ftbfs with GCC-12

#1012979#5
Date:
2022-06-16 12:10:59 UTC
From:
To:
[This bug is targeted to the upcoming bookworm release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-12/g++-12, but succeeds to build with gcc-11/g++-11. The
severity of this report will be raised before the bookworm release.

The full build log can be found at:
http://qa-logs.debian.net/2022/06/09/gcc12/libgtextutils_0.7-7_unstable_gcc12.log
The last lines of the build log are at the end of this report.

To build with GCC 11, either set CC=gcc-11 CXX=g++-11 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++

Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-11/porting_to.html

GCC 11 defaults to the GNU++17 standard.  If your package installs
header files in /usr/include, please don't work around C++17 issues
by choosing a lower C++ standard for the package build, but fix these
issues to build with the C++17 standard.

[...]
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/gtextutils'
make[3]: Entering directory '/<<PKGBUILDDIR>>/src'
make[3]: Nothing to be done for 'check-am'.
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
Making check in doc
make[2]: Entering directory '/<<PKGBUILDDIR>>/doc'
make[2]: Nothing to be done for 'check'.
make[2]: Leaving directory '/<<PKGBUILDDIR>>/doc'
Making check in tests
make[2]: Entering directory '/<<PKGBUILDDIR>>/tests'
make  test_container_join test_natural_sort test_input_stream_wrapper test_text_reader test_text_reader_unget test_fd_outbuf test_fd_inbuf test_in_out_buf test_pipe_fitter test_string_tokenize
make[3]: Entering directory '/<<PKGBUILDDIR>>/tests'
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_container_join.o test_container_join.cpp
printf "first line\nsecond line\nthird line\nfourth line\n" > test.txt
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_natural_sort.o test_natural_sort.cpp
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_input_stream_wrapper.o test_input_stream_wrapper.cpp
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_text_reader.o test_text_reader.cpp
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_text_reader_unget.o test_text_reader_unget.cpp
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_fd_outbuf.o test_fd_outbuf.cpp
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_fd_inbuf.o test_fd_inbuf.cpp
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_in_out_buf.o test_in_out_buf.cpp
In file included from test_natural_sort.cpp:24:
../src/gtextutils/natsort.h:81:45: error: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Werror=deprecated-declarations]
   81 | struct natural_sort_predicate : public std::binary_function<std::string, std::string, bool>
      |                                             ^~~~~~~~~~~~~~~
In file included from /usr/include/c++/12/bits/refwrap.h:39,
                 from /usr/include/c++/12/vector:66,
                 from test_natural_sort.cpp:18:
/usr/include/c++/12/bits/stl_function.h:131:12: note: declared here
  131 |     struct binary_function
      |            ^~~~~~~~~~~~~~~
../src/gtextutils/natsort.h:89:57: error: ‘template<class _Arg1, class _Arg2, class _Result> struct std::binary_function’ is deprecated [-Werror=deprecated-declarations]
   89 | struct natural_sort_ignore_case_predicate : public std::binary_function<std::string, std::string, bool>
      |                                                         ^~~~~~~~~~~~~~~
/usr/include/c++/12/bits/stl_function.h:131:12: note: declared here
  131 |     struct binary_function
      |            ^~~~~~~~~~~~~~~
gcc -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -c -o test_pipe_fitter.o test_pipe_fitter.c
g++ -DHAVE_CONFIG_H -I. -I..  -I../src -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -c -o test_string_tokenize.o test_string_tokenize.cpp
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_input_stream_wrapper test_input_stream_wrapper.o ../src/gtextutils/libgtextutils.la
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_text_reader test_text_reader.o ../src/gtextutils/libgtextutils.la
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_input_stream_wrapper test_input_stream_wrapper.o  ../src/gtextutils/.libs/libgtextutils.so
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_text_reader_unget test_text_reader_unget.o ../src/gtextutils/libgtextutils.la
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_text_reader test_text_reader.o  ../src/gtextutils/.libs/libgtextutils.so
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_fd_inbuf test_fd_inbuf.o ../src/gtextutils/libgtextutils.la
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_in_out_buf test_in_out_buf.o ../src/gtextutils/libgtextutils.la
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_pipe_fitter test_pipe_fitter.o ../src/gtextutils/libgtextutils.la
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_fd_outbuf test_fd_outbuf.o ../src/gtextutils/libgtextutils.la
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_text_reader_unget test_text_reader_unget.o  ../src/gtextutils/.libs/libgtextutils.so
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_fd_inbuf test_fd_inbuf.o  ../src/gtextutils/.libs/libgtextutils.so
libtool: link: gcc -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_pipe_fitter test_pipe_fitter.o  ../src/gtextutils/.libs/libgtextutils.so
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_in_out_buf test_in_out_buf.o  ../src/gtextutils/.libs/libgtextutils.so
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_container_join test_container_join.o ../src/gtextutils/libgtextutils.la
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_fd_outbuf test_fd_outbuf.o  ../src/gtextutils/.libs/libgtextutils.so
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_container_join test_container_join.o  ../src/gtextutils/.libs/libgtextutils.so
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1  -Wl,-z,relro -Wl,-z,now -o test_string_tokenize test_string_tokenize.o ../src/gtextutils/libgtextutils.la
libtool: link: g++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wformat-nonliteral -Wformat-security -Wswitch-default -Wswitch-enum -Wunused-parameter -Wfloat-equal -Werror -DDEBUG -g -O1 -DDEBUG -g -O1 -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/test_string_tokenize test_string_tokenize.o  ../src/gtextutils/.libs/libgtextutils.so
cc1plus: all warnings being treated as errors
make[3]: *** [Makefile:783: test_natural_sort.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/<<PKGBUILDDIR>>/tests'
make[2]: *** [Makefile:1130: check-am] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/tests'
make[1]: *** [Makefile:481: check-recursive] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
	rm -fr -- /tmp/dh-xdg-rundir-pGE9D_Cb
dh_auto_test: error: make -j8 check "TESTSUITEFLAGS=-j8 --verbose" VERBOSE=1 returned exit code 2
make: *** [debian/rules:8: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

#1012979#10
Date:
2022-06-17 16:34:06 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
libgtextutils, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1012979@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Pierre Gruet <pgt@debian.org> (supplier of updated libgtextutils package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Fri, 17 Jun 2022 18:02:16 +0200
Source: libgtextutils
Architecture: source
Version: 0.7-8
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org>
Changed-By: Pierre Gruet <pgt@debian.org>
Closes: 1012979
Changes:
 libgtextutils (0.7-8) unstable; urgency=medium
 .
   * Stopping using deprecated std:: binary_function (Closes: #1012979)
   * Stopping providing a symbols file for the C++ library, adding a Lintian
     override about it
   * Raising Standards version to 4.6.1, no change
   * Raising d/watch version to 4, no change
Checksums-Sha1:
 8d24bf59c37108480ebb4829caa1c830b88683c9 2115 libgtextutils_0.7-8.dsc
 cd4dea9b7205d6a158308f2ddf261651648e472f 16004 libgtextutils_0.7-8.debian.tar.xz
 f896c3ec0fbff532fbbdb232510af577ca424db4 6571 libgtextutils_0.7-8_amd64.buildinfo
Checksums-Sha256:
 f3a3883a9447409051b19f5414412f105a37513abd374000b1f9af8946c8f63a 2115 libgtextutils_0.7-8.dsc
 60d7b54aa584e8c3f24dd8d6d736e80aab1e11a616b23b0d726ad38913997c52 16004 libgtextutils_0.7-8.debian.tar.xz
 e2ae4c9889ece42d550eeec8bcf60bc3c1c94ead4ffe327d9e4e07747798ff07 6571 libgtextutils_0.7-8_amd64.buildinfo
Files:
 40b619be46ef85281d2e39ef99777f55 2115 science optional libgtextutils_0.7-8.dsc
 89e5a54641068e275f19a5b13651a7dd 16004 science optional libgtextutils_0.7-8.debian.tar.xz
 b011dc2954c14e7462aad8e0ea5e7e2d 6571 science optional libgtextutils_0.7-8_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEM8soQxPpC9J9y0UjYAMWptwndHYFAmKspxEACgkQYAMWptwn
dHY7NhAAiC9dImMsmnc0Unngroc4PNVoJ8sHIilMYGX6pn1+/S1o7h1sLpDq7V9f
kLJycVmj69zoWnzsSYvjvigZ3O4pto5nbwLgW1xfmViM3pdbbhTfcSf8bWUA+mWq
CfQ62OFchEyRJ1jickMKJ4nHWxWqMJ8IWmA5k8CfXWlhEYaBITwbn8MZbPv44t4E
xvQTRF3Z5oC6tomQPJJls9cc9CTsQDUh/k4g7JA1oVbeXTdScF074vkS2qHHNUc7
mKijaiu4AnfnLWbTUbhgfNU1wVvl2O9THth6kKZvkGj05GMJt7z69Kd2Cn7DeKQq
QVr9ijXbLIHg5qhzwK6PnDyQC1tqCfjwoE8lB8LD3cRdCsNB5k4IdwLBynrFV7pj
Cka2XoHoAAlhmAgW+ntF4+9JcFv++2YrGR3VV793GMQ1EMNQPnr57pB+VPxaSvIu
LVq+NtRGH06Vcx9TD3r8xJJ2OdNHV9z4+4ul01kjX6343wdya1dpsTy43SQZFRq6
tdRRcbqYBwrDbMMQ6vBkZZug5w1fEDQHJQ/+J6VtrwxMTjwW2aSo+ITl9E1YC+D/
ZCKSqy4BlaQQvHGeniD7WfDlZGcp/nB3k81Vu8ZKYICa+DM8Tt6w2voCE6hrx3XB
aKxfvTRMrLZdx6fR6dFBmbSnO9uKYBG5o+J0Aj+T0DK/2f5chw0=
=3FA8
-----END PGP SIGNATURE-----