Bug#1098186: yasr: ftbfs with GCC-15

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


Package: src:yasr
Version: 0.6.9-11
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/yasr_0.6.9-11_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

[...]
main.c:336:12: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  336 |     (void) write(master, buf, size);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
main.c:348:12: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  348 |     (void) write(master, buf, size);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
main.c:359:12: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  359 |     (void) write(master, buf, size);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
main.c: In function ‘get_tts_input’:
main.c:1233:10: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 1233 |   (void) read(tts.fd, buf, 100);
      |          ^~~~~~~~~~~~~~~~~~~~~~
main.c: In function ‘child’:
main.c:90:12: warning: ignoring return value of ‘chown’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   90 |     (void) chown((char *) buf, getuid(), -1);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
main.c:91:12: warning: ignoring return value of ‘setuid’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   91 |     (void) setuid(getuid());
      |            ^~~~~~~~~~~~~~~~
ui.c: In function ‘rev_main’:
ui.c:684:6: error: too many arguments to function ‘funcs[kf->index].f’; expected 0, have 1
  684 |     (*funcs[kf->index].f) (kf->argp);
      |     ~^~~~~~~~~~~~~~~~~~~~  ~~~~~~~~
In file included from ui.c:19:
yasr.h:90:12: note: declared here
   90 |     void (*f) ();
      |            ^
ui.c: In function ‘ui_keypress’:
ui.c:836:6: error: too many arguments to function ‘funcs[kf->index].f’; expected 0, have 1
  836 |     (*funcs[kf->index].f) (kf->argp);
      |     ~^~~~~~~~~~~~~~~~~~~~  ~~~~~~~~
yasr.h:90:12: note: declared here
   90 |     void (*f) ();
      |            ^
make[3]: *** [Makefile:472: ui.o] Error 1
main.c: In function ‘utmpconv.constprop’:
main.c:201:10: warning: ‘strcmp’ argument 1 declared attribute ‘nonstring’ is smaller than the specified bound 256 [-Wstringop-overread]
  201 |     if (!strcmp(u.ut_line, rs))
      |          ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/utmp.h:29,
                 from main.c:27:
/usr/include/x86_64-linux-gnu/bits/utmp.h:62:8: note: argument ‘ut_line’ declared here
   62 |   char ut_line[UT_LINESIZE]
      |        ^~~~~~~
main.c: In function ‘main’:
main.c:102:33: warning: ‘%s’ directive writing up to 255 bytes into a region of size 34 [-Wformat-overflow=]
  102 |   (void) sprintf(envstr, "SHELL=%s", usershell);
      |                                 ^~   ~~~~~~~~~
In file included from /usr/include/stdio.h:970,
                 from yasr.h:24,
                 from main.c:25:
In function ‘sprintf’,
    inlined from ‘child’ at main.c:102:10,
    inlined from ‘main’ at main.c:1376:23:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 7 and 262 bytes into a destination of size 40
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
make[3]: Leaving directory '/build/reproducible-path/yasr-0.6.9/yasr'
make[2]: *** [Makefile:464: all-recursive] Error 1
make[2]: Leaving directory '/build/reproducible-path/yasr-0.6.9'
make[1]: *** [Makefile:384: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/yasr-0.6.9'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:13: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-a11y-devel mailing list