[Debian-med-packaging] Bug#1037738: libsecrecy: ftbfs with GCC-13

Matthias Klose doko at debian.org
Wed Jun 14 10:27:11 BST 2023


Package: src:libsecrecy
Version: 0.0.5+ds-2
Severity: normal
Tags: sid trixie
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-13

[This bug is targeted to the upcoming trixie 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-13/g++-13, but succeeds to build with gcc-12/g++-12. The
severity of this report will be raised before the trixie release.

The full build log can be found at:
http://qa-logs.debian.net/2023/05/22/logs/libsecrecy_0.0.5+ds-2_unstable_gccexp.log
The last lines of the build log are at the end of this report.

To build with GCC 13, either set CC=gcc-13 CXX=g++-13 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-13/porting_to.html

[...]
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp: In instantiation of ‘void libsecrecy::RawKey<_keysize>::readKey(libsecrecy::GPGMEContext&, std::istream&, const libsecrecy::SecrecyKeyValueStore&) [with long unsigned int _keysize = 32; std::istream = std::basic_istream<char>]’:
./libsecrecy/GCMFactoryBase.hpp:74:54:   required from here
./libsecrecy/RawKey.hpp:697:62: error: ‘hexToNum’ was not declared in this scope
./libsecrecy/RawKey.hpp:699:62: error: ‘hexToNum’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation
  699 |                                 uint8_t const low  = hexToNum(*it++) << 0;
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp:697:62: note: ‘hexToNum’ declared here, later in the translation unit
  697 |                                 uint8_t const high = hexToNum(*it++) << 4;
      |                                                      ~~~~~~~~^~~~~~~
apps/secrecy.cpp: In function ‘int importKey(const char*, int, char**)’:
apps/secrecy.cpp:265:61: error: ‘hexToNum’ is not a member of ‘libsecrecy::NumToHex’
  265 |                 uint8_t const uhigh = libsecrecy::NumToHex::hexToNum(hexinput[i++]);
      |                                                             ^~~~~~~~
apps/secrecy.cpp:266:61: error: ‘hexToNum’ is not a member of ‘libsecrecy::NumToHex’
  266 |                 uint8_t const ulow  = libsecrecy::NumToHex::hexToNum(hexinput[i++]);
      |                                                             ^~~~~~~~
apps/secrecy.cpp:319:61: error: ‘hexToNum’ is not a member of ‘libsecrecy::NumToHex’
  319 |                 uint8_t const uhigh = libsecrecy::NumToHex::hexToNum(shash[2*i+0]);
      |                                                             ^~~~~~~~
apps/secrecy.cpp:320:60: error: ‘hexToNum’ is not a member of ‘libsecrecy::NumToHex’
  320 |                 uint8_t const ulow = libsecrecy::NumToHex::hexToNum(shash[2*i+1]);
      |                                                            ^~~~~~~~
apps/secrecy.cpp:344:61: error: ‘hexToNum’ is not a member of ‘libsecrecy::NumToHex’
  344 |                 uint8_t const uhigh = libsecrecy::NumToHex::hexToNum(c_bindata_a[2*i+0]);
      |                                                             ^~~~~~~~
apps/secrecy.cpp:345:61: error: ‘hexToNum’ is not a member of ‘libsecrecy::NumToHex’
  345 |                 uint8_t const ulow  = libsecrecy::NumToHex::hexToNum(c_bindata_a[2*i+1]);
      |                                                             ^~~~~~~~
./libsecrecy/RawKey.hpp: In instantiation of ‘void libsecrecy::RawKey<_keysize>::readKey(libsecrecy::GPGMEContext&, std::istream&, const libsecrecy::SecrecyKeyValueStore&) [with long unsigned int _keysize = 16; std::istream = std::basic_istream<char>]’:
./libsecrecy/GCMFactoryBase.hpp:56:54:   required from here
./libsecrecy/RawKey.hpp:697:62: error: ‘hexToNum’ was not declared in this scope
  697 |                                 uint8_t const high = hexToNum(*it++) << 4;
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp:699:62: error: ‘hexToNum’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation
  699 |                                 uint8_t const low  = hexToNum(*it++) << 0;
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp:697:62: note: ‘hexToNum’ declared here, later in the translation unit
  697 |                                 uint8_t const high = hexToNum(*it++) << 4;
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp: In instantiation of ‘void libsecrecy::RawKey<_keysize>::readKey(libsecrecy::GPGMEContext&, std::istream&, const libsecrecy::SecrecyKeyValueStore&) [with long unsigned int _keysize = 24; std::istream = std::basic_istream<char>]’:
./libsecrecy/GCMFactoryBase.hpp:65:54:   required from here
./libsecrecy/RawKey.hpp:697:62: error: ‘hexToNum’ was not declared in this scope
./libsecrecy/RawKey.hpp:699:62: error: ‘hexToNum’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation
  699 |                                 uint8_t const low  = hexToNum(*it++) << 0;
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp:697:62: note: ‘hexToNum’ declared here, later in the translation unit
  697 |                                 uint8_t const high = hexToNum(*it++) << 4;
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp: In instantiation of ‘void libsecrecy::RawKey<_keysize>::readKey(libsecrecy::GPGMEContext&, std::istream&, const libsecrecy::SecrecyKeyValueStore&) [with long unsigned int _keysize = 32; std::istream = std::basic_istream<char>]’:
./libsecrecy/GCMFactoryBase.hpp:74:54:   required from here
./libsecrecy/RawKey.hpp:697:62: error: ‘hexToNum’ was not declared in this scope
./libsecrecy/RawKey.hpp:699:62: error: ‘hexToNum’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation
  699 |                                 uint8_t const low  = hexToNum(*it++) << 0;
      |                                                      ~~~~~~~~^~~~~~~
./libsecrecy/RawKey.hpp:697:62: note: ‘hexToNum’ declared here, later in the translation unit
  697 |                                 uint8_t const high = hexToNum(*it++) << 4;
      |                                                      ~~~~~~~~^~~~~~~
make[3]: *** [Makefile:674: test/testEncDec-testEncDec.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:688: test/testSeek-testSeek.o] Error 1
make[3]: *** [Makefile:660: apps/secrecy-secrecy.o] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[2]: *** [Makefile:494: all-recursive] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: *** [Makefile:401: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:10: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Debian-med-packaging mailing list