Bug#957255: garden-of-coloured-lights: ftbfs with GCC-10

Matthias Klose doko at debian.org
Fri Apr 17 12:00:58 BST 2020


Package: src:garden-of-coloured-lights
Version: 1.0.9-1
Severity: normal
Tags: sid bullseye
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-10

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-10/g++-10, but succeeds to build with gcc-9/g++-9. The
severity of this report will be raised before the bullseye release,
so nothing has to be done for the buster release.

The full build log can be found at:
http://people.debian.org/~doko/logs/gcc10-20200225/garden-of-coloured-lights_1.0.9-1_unstable_gcc10.log
The last lines of the build log are at the end of this report.

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

[...]
  164 |  strncat(filename_buffer, "gfx/garden.dat", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
display_init.c:187:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  187 |  strncat(filename_buffer, "gfx/splash.bmp", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
display_init.c: In function ‘prepare_s_enemy_rles’:
display_init.c:362:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  362 |  strncat(filename_buffer, "gfx/small.bmp", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
display_init.c: In function ‘prepare_l_enemy_rles’:
display_init.c:540:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  540 |  strncat(filename_buffer, "gfx/large.bmp", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
display_init.c: In function ‘prepare_trans_rles’:
display_init.c:627:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  627 |  strncat(filename_buffer, "gfx/trans.bmp", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
display_init.c: In function ‘prepare_multi_rles’:
display_init.c:974:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  974 |  strncat(filename_buffer, "gfx/multi.bmp", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
display_init.c: In function ‘prepare_platform_rles’:
display_init.c:1074:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
 1074 |  strncat(filename_buffer, "gfx/platform.bmp", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o ebullet.o ebullet.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o eclass.o eclass.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o enemy.o enemy.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o game.o game.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o input.o input.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o level.o level.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o main.o main.c
main.c: In function ‘init_at_startup’:
main.c:155:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  155 |  strncat(filename_buffer, "init.txt", sizeof(filename_buffer));
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
main.c:166:3: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  166 |   strncat(right_path, "/.garden", sizeof(right_path) );
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
main.c:172:3: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
  172 |   strncat(right_path, "/init.txt", sizeof(right_path) );
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o menu.o menu.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o palette.o palette.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o pbullet.o pbullet.c
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o sound.o sound.c
sound.c: In function ‘load_sample_in’:
sound.c:1611:3: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
 1611 |   strncat(filename_buffer, "wavs/", sizeof(char) * DATADIR_SIZE);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sound.c:1614:3: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
 1614 |   strncat(filename_buffer, "beat/", sizeof(char) * DATADIR_SIZE);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sound.c:1617:2: warning: ‘strncat’ specified bound 512 equals destination size [-Wstringop-overflow=]
 1617 |  strncat (filename_buffer, ".wav", sizeof(char) * DATADIR_SIZE);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -DHAVE_CONFIG_H -I.  -D'DATADIR="/usr/share/garden"'   -std=gnu89 -c -o stuff.o stuff.c
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -std=gnu89   -o garden cloud.o display.o display_init.o ebullet.o eclass.o enemy.o game.o input.o level.o main.o menu.o palette.o pbullet.o sound.o stuff.o    -lm  -L/usr/lib/x86_64-linux-gnu -lalleg
libtool: link: gcc -std=gnu89 -o garden cloud.o display.o display_init.o ebullet.o eclass.o enemy.o game.o input.o level.o main.o menu.o palette.o pbullet.o sound.o stuff.o  -lm -L/usr/lib/x86_64-linux-gnu -lalleg
/usr/bin/ld: main.o:(.bss+0x14020): multiple definition of `eclass'; eclass.o:(.data+0x0): first defined here
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:438: garden] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[2]: *** [Makefile:338: all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[1]: *** [Makefile:398: all-recursive] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j1 returned exit code 2
make: *** [debian/rules:4: build] Error 25
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2



More information about the Pkg-games-devel mailing list