[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1096632: filter: ftbfs with GCC-15



Package: src:filter
Version: 2.6.3+ds1-5
Severity: important
Tags: sid forky
User: debian-gcc@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/filter_2.6.3+ds1-5_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

[...]
                 from actions.c:81:
sysdefs.h:26:7: warning: conflicting types for built-in function ‘strstr’; expected ‘char *(const char *, const char *)’ [-Wbuiltin-declaration-mismatch]
   26 | char *strstr();
      |       ^~~~~~
sysdefs.h:1:1: note: ‘strstr’ is declared in header ‘<string.h>’
  +++ |+#include <string.h>
    1 | 
In file included from defs.h:407:
/usr/include/string.h:350:14: error: conflicting types for ‘strstr’; have ‘char *(const char *, const char *)’
  350 | extern char *strstr (const char *__haystack, const char *__needle)
      |              ^~~~~~
sysdefs.h:26:7: note: previous declaration of ‘strstr’ with type ‘char *(void)’
   26 | char *strstr();
      |       ^~~~~~
defs.h:513:7: error: conflicting types for ‘strtok’; have ‘char *(void)’
  513 | char *strtok();
      |       ^~~~~~
/usr/include/string.h:356:14: note: previous declaration of ‘strtok’ with type ‘char *(char * restrict,  const char * restrict)’
  356 | extern char *strtok (char *__restrict __s, const char *__restrict __delim)
      |              ^~~~~~
In file included from actions.c:83:
utils.h:6:14: error: conflicting types for ‘itoa’; have ‘char *(int,  int)’
    6 | extern char *itoa(int i, int two_digit);
      |              ^~~~
In file included from actions.c:82:
filter.h:278:7: note: previous declaration of ‘itoa’ with type ‘char *(void)’
  278 | char *itoa();
      |       ^~~~
actions.c: In function ‘pipe_to_mailer’:
actions.c:101:5: warning: old-style function definition [-Wold-style-definition]
  101 | int pipe_to_mailer(ftmp, resendflag, address)
      |     ^~~~~~~~~~~~~~
actions.c: In function ‘mail_message’:
actions.c:205:1: warning: old-style function definition [-Wold-style-definition]
  205 | mail_message(address, fptr,resendflag)
      | ^~~~~~~~~~~~
actions.c: In function ‘save_message’:
actions.c:358:5: warning: old-style function definition [-Wold-style-definition]
  358 | int save_message(foldername, tmpfptr)
      |     ^~~~~~~~~~~~
actions.c: In function ‘save_to_folder’:
actions.c:435:5: warning: old-style function definition [-Wold-style-definition]
  435 | int save_to_folder(foldername,tmpfptr)
      |     ^~~~~~~~~~~~~~
actions.c: In function ‘execute’:
actions.c:505:6: warning: old-style function definition [-Wold-style-definition]
  505 | void execute(command, tmpfptr)
      |      ^~~~~~~
actions.c: In function ‘mail_message’:
actions.c:274:21: warning: ignoring return value of ‘setuid’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  274 |                     setuid(user_uid);
      |                     ^~~~~~~~~~~~~~~~
actions.c:275:21: warning: ignoring return value of ‘setgid’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  275 |                     setgid(user_gid);
      |                     ^~~~~~~~~~~~~~~~
actions.c: In function ‘execute’:
actions.c:549:17: warning: ignoring return value of ‘setgid’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  549 |                 setgid(user_gid);
      |                 ^~~~~~~~~~~~~~~~
actions.c:550:17: warning: ignoring return value of ‘setuid’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  550 |                 setuid(user_uid);
      |                 ^~~~~~~~~~~~~~~~
actions.c:554:17: warning: ignoring return value of ‘dup’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  554 |                 dup(tmpfd);
      |                 ^~~~~~~~~~
make[1]: *** [<builtin>: actions.o] Error 1
make[1]: Leaving directory '/build/reproducible-path/filter-2.6.3+ds1'
dh_auto_build: error: make -j1 returned exit code 2
make: *** [debian/rules:9: build] Error 255
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2


Reply to: