[Debian-zh-dev] Bug#1098198: zh-autoconvert: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 18:03:34 GMT 2025


Package: src:zh-autoconvert
Version: 0.3.16-10
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/zh-autoconvert_0.3.16-10_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

[...]
make[2]: Entering directory '/build/reproducible-path/zh-autoconvert-0.3.16/hzconvert'
x86_64-linux-gnu-gcc -fPIC -I../include -Wdate-time -D_FORTIFY_SOURCE=2 -O2 -g -Wall -Iinclude -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/zh-autoconvert-0.3.16=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c b2g.c
b2g.c: In function ‘g2b’:
b2g.c:39:13: warning: old-style function definition [-Wold-style-definition]
   39 | static void g2b(s)
      |             ^~~
b2g.c: In function ‘b2g’:
b2g.c:58:13: warning: old-style function definition [-Wold-style-definition]
   58 | static void b2g(s)
      |             ^~~
b2g.c: In function ‘gb2big_init’:
b2g.c:84:5: warning: old-style function definition [-Wold-style-definition]
   84 | int gb2big_init (arg)
      |     ^~~~~~~~~~~
b2g.c:86:1: error: number of arguments doesn’t match prototype
   86 | {
      | ^
In file included from b2g.c:26:
../include/hz.h:43:5: error: prototype declaration
   43 | int gb2big_init(), big2gb_init();       /* b2g.c */
      |     ^~~~~~~~~~~
b2g.c: In function ‘big2gb_init’:
b2g.c:100:5: warning: old-style function definition [-Wold-style-definition]
  100 | int big2gb_init (arg)
      |     ^~~~~~~~~~~
b2g.c:102:1: error: number of arguments doesn’t match prototype
  102 | {
      | ^
../include/hz.h:43:20: error: prototype declaration
   43 | int gb2big_init(), big2gb_init();       /* b2g.c */
      |                    ^~~~~~~~~~~
b2g.c: In function ‘gb2big’:
b2g.c:115:7: warning: old-style function definition [-Wold-style-definition]
  115 | char *gb2big (s,plen,inst)
      |       ^~~~~~
b2g.c:119:1: error: number of arguments doesn’t match prototype
  119 | {
      | ^
../include/hz.h:42:7: error: prototype declaration
   42 | char *gb2big(), *big2gb();              /* b2g.c */
      |       ^~~~~~
b2g.c:120:17: error: too many arguments to function ‘hzconvert’; expected 0, have 4
  120 |         return (hzconvert (s, plen, &gb2big_savec[inst], g2b));
      |                 ^~~~~~~~~  ~
b2g.c:80:14: note: declared here
   80 | extern char *hzconvert ();
      |              ^~~~~~~~~
b2g.c: In function ‘big2gb’:
b2g.c:123:7: warning: old-style function definition [-Wold-style-definition]
  123 | char *big2gb (s,plen,inst)
      |       ^~~~~~
b2g.c:127:1: error: number of arguments doesn’t match prototype
  127 | {
      | ^
../include/hz.h:42:18: error: prototype declaration
   42 | char *gb2big(), *big2gb();              /* b2g.c */
      |                  ^~~~~~
b2g.c:128:17: error: too many arguments to function ‘hzconvert’; expected 0, have 4
  128 |         return (hzconvert (s, plen, &big2gb_savec[inst], b2g));
      |                 ^~~~~~~~~  ~
b2g.c:80:14: note: declared here
   80 | extern char *hzconvert ();
      |              ^~~~~~~~~
make[2]: *** [Makefile:11: b2g.o] Error 1
make[2]: Leaving directory '/build/reproducible-path/zh-autoconvert-0.3.16/hzconvert'
make[1]: *** [Makefile:16: hzlib] Error 2
make[1]: Leaving directory '/build/reproducible-path/zh-autoconvert-0.3.16'
dh_auto_build: error: make -j1 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:16: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Chinese-developers mailing list