#1097980 tdom: ftbfs with GCC-15

#1097980#5
Date:
2025-02-17 17:56:38 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/tdom_0.9.5-1.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

[...]
configure: creating ./config.status
config.status: creating Makefile
config.status: creating pkgIndex.tcl
( cd extensions/tdomhtml ; ./configure \
	--host=x86_64-linux-gnu \
	--build=x86_64-linux-gnu \
	--prefix=/build/reproducible-path/tdom-0.9.5/debian/tdom/usr \
	--mandir=\${prefix}/share/man \
	--infodir=\${prefix}/share/info \
	--libdir=\${prefix}/lib/tcltk/x86_64-linux-gnu \
	--includedir=/build/reproducible-path/tdom-0.9.5/debian/tdom-dev/usr/include/tdom )
checking for a BSD-compatible install... /usr/bin/install -c
configure: creating ./config.status
config.status: creating Makefile
config.status: WARNING:  'Makefile.in' seems to ignore the --datarootdir setting
config.status: creating pkgIndex.tcl
make[1]: Leaving directory '/build/reproducible-path/tdom-0.9.5'
   debian/rules override_dh_auto_build
make[1]: Entering directory '/build/reproducible-path/tdom-0.9.5'
# Add here commands to compile the package.
( cd unix ; /usr/bin/make )
make[2]: Entering directory '/build/reproducible-path/tdom-0.9.5/unix'
x86_64-linux-gnu-gcc -DPACKAGE_NAME=\"tdom\" -DPACKAGE_TARNAME=\"tdom\" -DPACKAGE_VERSION=\"0.9.5\" -DPACKAGE_STRING=\"tdom\ 0.9.5\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DBUILD_tdom=/\*\*/ -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DTcl_Size=int -DHAVE_MEMMOVE=1 -DHAVE_BCOPY=1 -DHAVE_ARC4RANDOM_BUF=1 -DHAVE_GETRANDOM=1 -DXML_DEV_URANDOM=1 -DXML_POOR_ENTROPY=1 -DHAVE_UINTPTR_T=1 -DTDOM_HAVE_GUMBO=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DUSE_TCL_STUBS=1 -DUSE_TCLOO_STUBS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\) -DHAVE_HIDDEN=1 -DHAVE_CAST_TO_UNION=1 -DHAVE_STDBOOL_H=1 -DTCL_WIDE_INT_IS_LONG=1 -DTCL_CFG_OPTIMIZED=1 -DTCL_MAJOR_VERSION=8 -DXML_DTD=1 -DXML_CONTEXT_BYTES=0 -DXML_GE=1 -DXML_LARGE_SIZE=1 -DXML_NS=1 -DTDOM_NO_UNKNOWN_CMD=1 -DUSE_NORMAL_ALLOCATOR=1  -I/usr/include -I../generic -I"/usr/include/tcl8.6" -I/build/reproducible-path/tdom-0.9.5/unix    -O2 -fomit-frame-pointer -DNDEBUG -Wall -fPIC -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/tdom-0.9.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -pipe -O2 -fomit-frame-pointer -DNDEBUG -Wall -fPIC -Wdate-time -D_FORTIFY_SOURCE=2 -c `echo ../generic/xmlsimple.c` -o xmlsimple.o
x86_64-linux-gnu-gcc -DPACKAGE_NAME=\"tdom\" -DPACKAGE_TARNAME=\"tdom\" -DPACKAGE_VERSION=\"0.9.5\" -DPACKAGE_STRING=\"tdom\ 0.9.5\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DBUILD_tdom=/\*\*/ -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DTcl_Size=int -DHAVE_MEMMOVE=1 -DHAVE_BCOPY=1 -DHAVE_ARC4RANDOM_BUF=1 -DHAVE_GETRANDOM=1 -DXML_DEV_URANDOM=1 -DXML_POOR_ENTROPY=1 -DHAVE_UINTPTR_T=1 -DTDOM_HAVE_GUMBO=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DUSE_TCL_STUBS=1 -DUSE_TCLOO_STUBS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\) -DHAVE_HIDDEN=1 -DHAVE_CAST_TO_UNION=1 -DHAVE_STDBOOL_H=1 -DTCL_WIDE_INT_IS_LONG=1 -DTCL_CFG_OPTIMIZED=1 -DTCL_MAJOR_VERSION=8 -DXML_DTD=1 -DXML_CONTEXT_BYTES=0 -DXML_GE=1 -DXML_LARGE_SIZE=1 -DXML_NS=1 -DTDOM_NO_UNKNOWN_CMD=1 -DUSE_NORMAL_ALLOCATOR=1  -I/usr/include -I../generic -I"/usr/include/tcl8.6" -I/build/reproducible-path/tdom-0.9.5/unix    -O2 -fomit-frame-pointer -DNDEBUG -Wall -fPIC -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/tdom-0.9.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -pipe -O2 -fomit-frame-pointer -DNDEBUG -Wall -fPIC -Wdate-time -D_FORTIFY_SOURCE=2 -c `echo ../generic/dom.c` -o dom.o
../generic/dom.c: In function ‘TclTdomObjCmd’:
../generic/dom.c:5494:43: error: expected identifier or ‘(’ before ‘bool’
 5494 |     int              methodIndex, result, bool;
      |                                           ^~~~
../generic/dom.c:5606:58: error: expected expression before ‘bool’
 5606 |             if (Tcl_GetBooleanFromObj (interp, objv[3], &bool) != TCL_OK) {
      |                                                          ^~~~
../generic/dom.c:5609:37: error: expected expression before ‘bool’
 5609 |             info->storeLineColumn = bool;
      |                                     ^~~~
../generic/dom.c:5661:54: error: expected expression before ‘bool’
 5661 |         if (Tcl_GetBooleanFromObj (interp, objv[3], &bool) != TCL_OK) {
      |                                                      ^~~~
../generic/dom.c:5664:36: error: expected expression before ‘bool’
 5664 |         info->ignoreWhiteSpaces = !bool;
      |                                    ^~~~
../generic/dom.c:5665:42: error: expected expression before ‘bool’
 5665 |         handlerSet->ignoreWhiteCDATAs = !bool;
      |                                          ^~~~
../generic/dom.c:5685:54: error: expected expression before ‘bool’
 5685 |         if (Tcl_GetBooleanFromObj (interp, objv[3], &bool) != TCL_OK) {
      |                                                      ^~~~
../generic/dom.c:5688:17: error: expected identifier or ‘(’ before ‘)’ token
 5688 |         if (bool) {
      |                 ^
../generic/dom.c:5688:13: error: declaration in the controlling expression must have an initializer
 5688 |         if (bool) {
      |             ^~~~
../generic/dom.c:5714:54: error: expected expression before ‘bool’
 5714 |         if (Tcl_GetBooleanFromObj (interp, objv[3], &bool) != TCL_OK) {
      |                                                      ^~~~
../generic/dom.c:5718:32: error: expected expression before ‘bool’
 5718 |         expat->keepTextStart = bool;
      |                                ^~~~
../generic/dom.c:5730:58: error: expected expression before ‘bool’
 5730 |             if (Tcl_GetBooleanFromObj (interp, objv[3], &bool) != TCL_OK) {
      |                                                          ^~~~
../generic/dom.c:5733:33: error: expected expression before ‘bool’
 5733 |             info->ignorexmlns = bool;
      |                                 ^~~~
make[2]: *** [Makefile:336: dom.o] Error 1
make[2]: Leaving directory '/build/reproducible-path/tdom-0.9.5/unix'
make[1]: *** [debian/rules:62: override_dh_auto_build] Error 2
make[1]: Leaving directory '/build/reproducible-path/tdom-0.9.5'
make: *** [debian/rules:13: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

#1097980#10
Date:
2025-08-20 10:01:51 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
tdom, 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 1097980@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Hector Romojaro <hector.romojaro@gmail.com> (supplier of updated tdom 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: Wed, 20 Aug 2025 10:57:39 +0200
Source: tdom
Architecture: source
Version: 0.9.6-1
Distribution: unstable
Urgency: medium
Maintainer: Tcl/Tk Debian Packagers <pkg-tcltk-devel@lists.alioth.debian.org>
Changed-By: Hector Romojaro <hector.romojaro@gmail.com>
Closes: 1097980
Changes:
 tdom (0.9.6-1) unstable; urgency=medium
 .
   [ Hector Romojaro ]
   * New upstream version 0.9.6
     (Closes: #1097980)
   * Remove unused lintian override
   * Updated debian/copyright
Checksums-Sha1:
 13773aad036db13fa271b6845a41146f2c8a3d87 2070 tdom_0.9.6-1.dsc
 a864a2f2f03a047d33df27bab6e06f917597dce0 1530711 tdom_0.9.6.orig.tar.gz
 5652bb7077887aac7386f2f7479abe47588f3f48 7228 tdom_0.9.6-1.debian.tar.xz
 095799e084cfcaa1ae42e29a09e6d782fe91917e 6579 tdom_0.9.6-1_amd64.buildinfo
Checksums-Sha256:
 750186109dde898e70c971fad1116bf88927c39da9e3fec12b25f5b3a387638d 2070 tdom_0.9.6-1.dsc
 6d24734aef46d1dc16f3476685414794d6a4e65f48079e1029374477104e8319 1530711 tdom_0.9.6.orig.tar.gz
 95c77b9e8b2ebae543562cb0e111e7192d00a9ed2770682a5088d0accda11929 7228 tdom_0.9.6-1.debian.tar.xz
 e9449c1406f46803eef17ec071e49db69ba9fcbc1cedf3f2e80a1b4997ca62d5 6579 tdom_0.9.6-1_amd64.buildinfo
Files:
 627bde3956f64422078043212672f9f2 2070 libs optional tdom_0.9.6-1.dsc
 2f71ad81722159e2eb1d9051e0f4f886 1530711 libs optional tdom_0.9.6.orig.tar.gz
 ef994b266aea75bd363658c560141048 7228 libs optional tdom_0.9.6-1.debian.tar.xz
 4d5ea3c5ac8f799b25a93cdfc3b098a2 6579 libs optional tdom_0.9.6-1_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE5FbOA8R4BcPcWpNk7cjIJA9ojmgFAmillS8ACgkQ7cjIJA9o
jmgNCxAA1y2aQY4bdj/G4KSlGSlGv9pnR75gO2wKKP9/AlswvRFkY/m3MKl2Jird
MzJMthttCvbk99smEWPLk85cesZMXaIyd/GMlfhLfVb2KDWn9eej0vlpEVbAecon
bAaCWV6nNfNLmHRCUBAeneZLln0yzFGJvKwvEFuKbEmdO/ei8/C5MTL30O/D3/hU
QS2iaxi53gH/YPhQ+PEbov6NRvHAdy2P/o1t4zDd6l5OdQouwiI6SvFcFqLHlYvV
5saUX6x1cHxfiXs+Q4BwteOQQadN5GjOFQ+kaVBkhOmhO+Oi6DNoNP+tfXmpngkC
ZYnF4t18r/DgnON4BebGQ6efd9vcYrJBx2ETLo/keC1nkZAntO2RNQ29B3a8rNkh
RwL2uNNSJhUwaXl51TfMfJYS0Uby+ohcfjkj+MvHuJmrwdNGc8PIr+1vjalO+P54
qowJQRt0RJGT81dxhiPtiGxnznYo/kvJnZE2lZHSjLWF1T5rs/yhZDtV/PZgF9o1
S1UQgwTV41vgNJQmvVNs2CH48tq7kEKupaxWix74J3iNke9eK1INu+LnyCx+aZDG
OqYkmcj4mgcKhPp8HO14/emGcFL8S5/SnmngsfWz0SBZfk8X1TNGAVd/DWO4uiCa
4AqVjubMBcvFtTHuYTnfscWNaTx5seiqRVhYVY7Pgp+cxZi/vt4=
=XW8e
-----END PGP SIGNATURE-----