[Pkg-tcltk-devel] Bug#1098004: tk-table: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 17:57:22 GMT 2025


Package: src:tk-table
Version: 2.10.8-2
Severity: important
Tags: sid forky
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-15

[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/tk-table_2.10.8-2_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

[...]
      | ^~~~~~~~~~~~~~~~~~~~
./generic/tkTable.c: In function ‘TableAdjustActive’:
./generic/tkTable.c:2983:1: warning: old-style function definition [-Wold-style-definition]
 2983 | TableAdjustActive(tablePtr)
      | ^~~~~~~~~~~~~~~~~
./generic/tkTable.c: In function ‘TableAdjustParams’:
./generic/tkTable.c:3117:59: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 3117 |         entryPtr = Tcl_FindHashEntry(tablePtr->colWidths, (char *) i);
      |                                                           ^
/usr/include/tcl8.6/tcl.h:2570:60: note: in definition of macro ‘Tcl_FindHashEntry’
 2570 |         (*((tablePtr)->findProc))(tablePtr, (const char *)(key))
      |                                                            ^~~
./generic/tkTable.c:3123:21: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
 3123 |             value = (int) Tcl_GetHashValue(entryPtr);
      |                     ^
./generic/tkTable.c:3211:64: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
 3211 |             entryPtr = Tcl_FindHashEntry(tablePtr->rowHeights, (char *) i);
      |                                                                ^
/usr/include/tcl8.6/tcl.h:2570:60: note: in definition of macro ‘Tcl_FindHashEntry’
 2570 |         (*((tablePtr)->findProc))(tablePtr, (const char *)(key))
      |                                                            ^~~
./generic/tkTable.c:3217:25: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
 3217 |                 value = (int) Tcl_GetHashValue(entryPtr);
      |                         ^
./generic/tkTable.c: In function ‘TableFetchSelection’:
./generic/tkTable.c:3579:1: warning: old-style function definition [-Wold-style-definition]
 3579 | TableFetchSelection(clientData, offset, buffer, maxBytes)
      | ^~~~~~~~~~~~~~~~~~~
./generic/tkTable.c: In function ‘TableLostSelection’:
./generic/tkTable.c:3721:1: warning: old-style function definition [-Wold-style-definition]
 3721 | TableLostSelection(clientData)
      | ^~~~~~~~~~~~~~~~~~
./generic/tkTable.c: In function ‘TableRestrictProc’:
./generic/tkTable.c:3760:1: warning: old-style function definition [-Wold-style-definition]
 3760 | TableRestrictProc(serial, eventPtr)
      | ^~~~~~~~~~~~~~~~~
./generic/tkTable.c:3765:33: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
 3765 |         ((eventPtr->xany.serial-(unsigned int)serial) > 0)) {
      |                                 ^
./generic/tkTable.c: In function ‘TableValidateChange’:
./generic/tkTable.c:3792:1: warning: old-style function definition [-Wold-style-definition]
 3792 | TableValidateChange(tablePtr, r, c, old, new, index)
      | ^~~~~~~~~~~~~~~~~~~
./generic/tkTable.c:3800:15: error: expected identifier or ‘(’ before ‘bool’
 3800 |     int code, bool;
      |               ^~~~
./generic/tkTable.c:3839:39: error: expected expression before ‘bool’
 3839 |                                      &bool) != TCL_OK) {
      |                                       ^~~~
./generic/tkTable.c:3845:23: error: expected expression before ‘?’ token
 3845 |         code = (bool) ? TCL_OK : TCL_BREAK;
      |                       ^
./generic/tkTable.c: In function ‘ExpandPercents’:
./generic/tkTable.c:3887:1: warning: old-style function definition [-Wold-style-definition]
 3887 | ExpandPercents(tablePtr, before, r, c, old, new, index, dsPtr, cmdType)
      | ^~~~~~~~~~~~~~
./generic/tkTable.c: In function ‘Tktable_Init’:
./generic/tkTable.c:4010:1: warning: old-style function definition [-Wold-style-definition]
 4010 | Tktable_Init(interp)
      | ^~~~~~~~~~~~
./generic/tkTable.c: In function ‘Tktable_SafeInit’:
./generic/tkTable.c:4055:1: warning: old-style function definition [-Wold-style-definition]
 4055 | Tktable_SafeInit(interp)
      | ^~~~~~~~~~~~~~~~
make[1]: *** [Makefile:318: tkTable.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/build/reproducible-path/tk-table-2.10.8'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-tcltk-devel mailing list