#1097574 pgpdump: ftbfs with GCC-15

Package:
src:pgpdump
Source:
src:pgpdump
Submitter:
Matthias Klose
Date:
2025-09-22 18:08:02 UTC
Severity:
normal
Tags:
#1097574#5
Date:
2025-02-17 17:43:24 UTC
From:
To:
[This bug is NOT 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-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/pgpdump_0.36-1_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

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

  apt-get -t=experimental install g++

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other 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-15/porting_to.html

[...]
pgpdump.h:153:13: note: ‘signer_user_id’ declared here
  153 | public void signer_user_id(int);
      |             ^~~~~~~~~~~~~~
packet.c:233:9: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(int)’ [-Wincompatible-pointer-types]
  233 |         reason_for_revocation,
      |         ^~~~~~~~~~~~~~~~~~~~~
packet.c:233:9: note: (near initialization for ‘sigsub_func[29]’)
pgpdump.h:154:13: note: ‘reason_for_revocation’ declared here
  154 | public void reason_for_revocation(int);
      |             ^~~~~~~~~~~~~~~~~~~~~
packet.c:234:9: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(int)’ [-Wincompatible-pointer-types]
  234 |         features,
      |         ^~~~~~~~
packet.c:234:9: note: (near initialization for ‘sigsub_func[30]’)
pgpdump.h:155:13: note: ‘features’ declared here
  155 | public void features(int);
      |             ^~~~~~~~
packet.c:235:9: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(int)’ [-Wincompatible-pointer-types]
  235 |         signature_target,
      |         ^~~~~~~~~~~~~~~~
packet.c:235:9: note: (near initialization for ‘sigsub_func[31]’)
pgpdump.h:156:13: note: ‘signature_target’ declared here
  156 | public void signature_target(int);
      |             ^~~~~~~~~~~~~~~~
packet.c:236:9: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(int)’ [-Wincompatible-pointer-types]
  236 |         embedded_signature,
      |         ^~~~~~~~~~~~~~~~~~
packet.c:236:9: note: (near initialization for ‘sigsub_func[32]’)
pgpdump.h:157:13: note: ‘embedded_signature’ declared here
  157 | public void embedded_signature(int);
      |             ^~~~~~~~~~~~~~~~~~
packet.c:237:9: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(int)’ [-Wincompatible-pointer-types]
  237 |         issuer_fingerprint,
      |         ^~~~~~~~~~~~~~~~~~
packet.c:237:9: note: (near initialization for ‘sigsub_func[33]’)
pgpdump.h:158:13: note: ‘issuer_fingerprint’ declared here
  158 | public void issuer_fingerprint(int);
      |             ^~~~~~~~~~~~~~~~~~
packet.c:238:9: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(int)’ [-Wincompatible-pointer-types]
  238 |         preferred_aead_algorithms,
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
packet.c:238:9: note: (near initialization for ‘sigsub_func[34]’)
pgpdump.h:142:13: note: ‘preferred_aead_algorithms’ declared here
  142 | public void preferred_aead_algorithms(int);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
packet.c:251:9: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(int)’ [-Wincompatible-pointer-types]
  251 |         image_attribute,
      |         ^~~~~~~~~~~~~~~
packet.c:251:9: note: (near initialization for ‘uatsub_func[1]’)
pgpdump.h:164:13: note: ‘image_attribute’ declared here
  164 | public void image_attribute(int);
      |             ^~~~~~~~~~~~~~~
packet.c: In function ‘parse_packet’:
packet.c:365:26: error: too many arguments to function ‘tag_func[tag]’; expected 0, have 1
  365 |                         (*tag_func[tag])(len);
      |                         ~^~~~~~~~~~~~~~~ ~~~
packet.c: In function ‘parse_signature_subpacket’:
packet.c:421:26: error: too many arguments to function ‘sigsub_func[subtype]’; expected 0, have 1
  421 |                         (*sigsub_func[subtype])(len);
      |                         ~^~~~~~~~~~~~~~~~~~~~~~ ~~~
packet.c: In function ‘parse_userattr_subpacket’:
packet.c:456:26: error: too many arguments to function ‘uatsub_func[subtype]’; expected 0, have 1
  456 |                         (*uatsub_func[subtype])(len);
      |                         ~^~~~~~~~~~~~~~~~~~~~~~ ~~~
make[1]: *** [Makefile:27: packet.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/build/reproducible-path/pgpdump-0.36'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

#1097574#10
Date:
2025-02-23 17:06:18 UTC
From:
To:
[...]
[...]

This is probably already fixed in upstream git:
https://github.com/kazu-yamamoto/pgpdump/commit/541442dc04259bde680b46742522177be40cc065
| Fix C23 compatibility
| C23 removes unprototyped functions, so fix the function pointer type.

cu Andreas

#1097574#19
Date:
2025-09-21 12:51:25 UTC
From:
To:
Dear maintainer,

It is indeed, as I just verified.

Given that this package is now marked for autoremoval from testing due
to this bug I've prepared an NMU for pgpdump (versioned as 0.36-1.1) and
uploaded it to DELAYED/10. Please feel free to tell me if I should delay
it longer.

Cheers,
Flo

#1097574#28
Date:
2025-09-22 16:38:09 UTC
From:
To:
Thank you. Please feel free to reschedule to DELAYED/0.

cu And- had this pending for a team upload but was waiting for a GIT
        push -reas

#1097574#33
Date:
2025-09-22 17:53:01 UTC
From:
To:
Thanks for the feedback, so now rescheduled accordingly.

I see. Yeah, I was wondering why this hadn't been picked up yet when the
patch was readily available as pointed out by you, but didn't make the
connection of you being a member of the team, or I would have refrained
from NMU'ing. So thanks again for gracefully accepting.

Cheers,
Flo

#1097574#38
Date:
2025-09-22 18:06:35 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
pgpdump, 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 1097574@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Florian Ernst <florian@debian.org> (supplier of updated pgpdump 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: Sun, 21 Sep 2025 14:46:56 +0200
Source: pgpdump
Architecture: source
Version: 0.36-1.1
Distribution: unstable
Urgency: medium
Maintainer: Debian GnuPG Maintainers <pkg-gnupg-maint@lists.alioth.debian.org>
Changed-By: Florian Ernst <florian@debian.org>
Closes: 1097574
Changes:
 pgpdump (0.36-1.1) unstable; urgency=medium
 .
   * Non-maintainer upload.
   * add upstream patch to fix ftbfs with GCC-15 (Closes: #1097574)
Checksums-Sha1:
 3e069a95f6b87c6a0824e80bb4dfb944187e5cc5 2018 pgpdump_0.36-1.1.dsc
 887c5feaa70e6504ceea0577156a7af051e2768b 5164 pgpdump_0.36-1.1.debian.tar.xz
 fc0fc1f06c6af80c46faf9c0cde094b6c0930eac 6593 pgpdump_0.36-1.1_amd64.buildinfo
Checksums-Sha256:
 198533dd4a5a72f98e0018dca726b04b9f56e54e5ae0b8372256659a13ca6d15 2018 pgpdump_0.36-1.1.dsc
 d57d0a90556c50020ee0b99457c429a10d5f0c0355b92280c6ccbd852444c790 5164 pgpdump_0.36-1.1.debian.tar.xz
 82f7cbb41ecb1dec1c8b2f93e01e33bb55f99c25c6e245f8f310356db5a13769 6593 pgpdump_0.36-1.1_amd64.buildinfo
Files:
 750bb747c7295fd8a2a5e6f698d4f47e 2018 utils optional pgpdump_0.36-1.1.dsc
 7a0ae29a65e109aa75354a3ba6be2d68 5164 utils optional pgpdump_0.36-1.1.debian.tar.xz
 1815130285231685a739fa4b2e201ea7 6593 utils optional pgpdump_0.36-1.1_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEBn03XtJwVyplJ26xBjdBuvXdHs4FAmjP9NYACgkQBjdBuvXd
Hs57hw//cB4R0Rnu84dlBbST68EHHEa4wFqA9V4Bu4HSXcgulbY6N+fxU0WIhJhv
eKNPnQOeCePqaEV//D6BjAxnA9qOfUSramF5yLiAzEsLSL4LdS75Anyo4vivk1oI
vDqet2YvGYAq/5hhKPZoVqWq2ICCgId25cjIkuHp5xvDH9QJ+kOKoesXx/kzeSyi
H5kWzIx5XCUkkwYLIEJs7lwGtJETBe7PMbcTEFZ/I30IEyJfRAxK1TlIoS7RR74b
Vp28Ur1HGMF/haJBcSaJZ4IvsbLl/tYHsYMgZBe1zSHMODAjlfVd9yYbNoMhiNAo
8EKpGEJCISMZ1LNVfS9ZeHfCLttpogXLONe3SDq5obJPeNxjG9pEmv1WbCQZX/Vf
IyP23Qp75UBC835NA/wxUX9mDV1/14aJt6HLAUPJ+1ePus43tgTXbGFg3d1DMX4B
/3Gt2PT6MZcbvzSIObfXZdQAk3Zr0rR8JNN7aQX3zs64auAfjRGYGrOL2XEizTaZ
mp+QRbvnJbXRMqbLYh4YaZqSkcpmM58lfIivnE+zd+8pKVmOg1RHJq2eTLkLsm1g
2EZq/TaTdi1KRiPpMB5DvnHCwnwBQIXA8mCmasTp1q05L/HFW8JYNKQ14FRE0ZJI
mDLCupJKhR4tYgkPfy3WT25jCMNDtIDO3srGQr8A2WJ/QZ28Wjg=
=L5QN
-----END PGP SIGNATURE-----