Bug#1096758: gplanarity: ftbfs with GCC-15

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


Package: src:gplanarity
Version: 17906-7
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/gplanarity_17906-7_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

[...]
      |                      ^
gameboard.h:255:13: note: ‘expand_action’ declared here
  255 | extern void expand_action(Gameboard *g);
      |             ^~~~~~~~~~~~~
gameboard_logic_buttonbar.c:71:22: error: assignment to ‘void (*)(void)’ from incompatible pointer type ‘void (*)(Gameboard *)’ {aka ‘void (*)(struct _Gameboard *)’} [-Wincompatible-pointer-types]
   71 |   states[6].callback = shrink_action;
      |                      ^
gameboard.h:256:13: note: ‘shrink_action’ declared here
  256 | extern void shrink_action(Gameboard *g);
      |             ^~~~~~~~~~~~~
gameboard_logic_buttonbar.c:72:22: error: assignment to ‘void (*)(void)’ from incompatible pointer type ‘void (*)(Gameboard *)’ {aka ‘void (*)(struct _Gameboard *)’} [-Wincompatible-pointer-types]
   72 |   states[7].callback = toggle_hide_lines;
      |                      ^
gameboard.h:261:13: note: ‘toggle_hide_lines’ declared here
  261 | extern void toggle_hide_lines(Gameboard *g);
      |             ^~~~~~~~~~~~~~~~~
gameboard_logic_buttonbar.c:73:22: error: assignment to ‘void (*)(void)’ from incompatible pointer type ‘void (*)(Gameboard *)’ {aka ‘void (*)(struct _Gameboard *)’} [-Wincompatible-pointer-types]
   73 |   states[8].callback = toggle_show_intersections;
      |                      ^
gameboard.h:263:13: note: ‘toggle_show_intersections’ declared here
  263 | extern void toggle_show_intersections(Gameboard *g);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
gameboard_logic_buttonbar.c:74:22: error: assignment to ‘void (*)(void)’ from incompatible pointer type ‘void (*)(Gameboard *)’ {aka ‘void (*)(struct _Gameboard *)’} [-Wincompatible-pointer-types]
   74 |   states[9].callback = finish_action;
      |                      ^
gameboard.h:254:13: note: ‘finish_action’ declared here
  254 | extern void finish_action(Gameboard *g);
      |             ^~~~~~~~~~~~~
make[2]: *** [<builtin>: dialog_pause.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [<builtin>: gameboard_logic_buttonbar.o] Error 1
dialog_finish.c: In function ‘setup_finish_buttons’:
dialog_finish.c:84:22: error: assignment to ‘void (*)(void)’ from incompatible pointer type ‘void (*)(Gameboard *)’ {aka ‘void (*)(struct _Gameboard *)’} [-Wincompatible-pointer-types]
   84 |   states[0].callback = local_quit;
      |                      ^
dialog_finish.c:69:13: note: ‘local_quit’ declared here
   69 | static void local_quit (Gameboard *g){
      |             ^~~~~~~~~~
dialog_finish.c:85:22: error: assignment to ‘void (*)(void)’ from incompatible pointer type ‘void (*)(Gameboard *)’ {aka ‘void (*)(struct _Gameboard *)’} [-Wincompatible-pointer-types]
   85 |   states[1].callback = local_level;
      |                      ^
dialog_finish.c:65:13: note: ‘local_level’ declared here
   65 | static void local_level (Gameboard *g){
      |             ^~~~~~~~~~~
dialog_finish.c:86:23: error: assignment to ‘void (*)(void)’ from incompatible pointer type ‘void (*)(Gameboard *)’ {aka ‘void (*)(struct _Gameboard *)’} [-Wincompatible-pointer-types]
   86 |   states[10].callback = local_go;
      |                       ^
dialog_finish.c:61:13: note: ‘local_go’ declared here
   61 | static void local_go (Gameboard *g){
      |             ^~~~~~~~
make[2]: *** [<builtin>: dialog_finish.o] Error 1
gameboard_logic_mouse.c: In function ‘mouse_release’:
gameboard_logic_mouse.c:294:9: error: too many arguments to function ‘b->callback’; expected 0, have 1
  294 |         b->callback(g);
      |         ^           ~
In file included from gameboard_logic_mouse.c:38:
gameboard.h:122:10: note: declared here
  122 |   void (*callback)();
      |          ^~~~~~~~
make[2]: *** [<builtin>: gameboard_logic_mouse.o] Error 1
gameboard.c: In function ‘gameboard_realize’:
gameboard.c:131:3: warning: ignoring return value of ‘gtk_style_attach’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  131 |   gtk_style_attach (widget->style, widget->window);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: Leaving directory '/build/reproducible-path/gplanarity-17906'
make[1]: *** [Makefile:61: all-local] Error 2
make[1]: Leaving directory '/build/reproducible-path/gplanarity-17906'
dh_auto_build: error: make -j8 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-games-devel mailing list