Package: src:riemann-c-client
Version: 1.10.4-4
Severity: important
Tags: sid forky
User: debian-...@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/riemann-c-client_1.10.4-4_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

[...]
  286 |   STUB (gnutls_record_send, session, data, len);
      |   ^~~~
../../tests/check_networked.c: In function ‘gnutls_record_recv’:
../../tests/mocks.h:38:10: error: too many arguments to function 
‘mock_gnutls_record_recv’; expected 0, have 3
   38 |   return mock_##name (__VA_ARGS__)
      |          ^~~~~
../../tests/check_networked.c:292:3: note: in expansion of macro ‘STUB’
  292 |   STUB (gnutls_record_recv, session, buf, len);
      |   ^~~~
../../tests/check_networked.c: In function 
‘_mock_gnutls_record_recv_message_part’:
../../tests/check_networked.c:308:10: error: too many arguments to function 
‘real_gnutls_record_recv’; expected 0, have 3
  308 |   return real_gnutls_record_recv (session, buf, len);
      |          ^~~~~~~~~~~~~~~~~~~~~~~  ~~~~~~~
../../tests/check_networked.c: In function 
‘_mock_gnutls_record_recv_message_garbage’:
../../tests/check_networked.c:319:9: error: too many arguments to function 
‘real_gnutls_record_recv’; expected 0, have 3
  319 |   res = real_gnutls_record_recv (session, buf, len);
      |         ^~~~~~~~~~~~~~~~~~~~~~~  ~~~~~~~
../../tests/check_networked.c: In function 
‘test_net_riemann_client_recv_message_tls_fn’:
../../tests/mocks.h:29:38: error: assignment to ‘ssize_t (*)(void)’ {aka ‘long 
int (*)(void)’} from incompatible pointer type ‘ssize_t (*)(struct 
gnutls_session_int *, void *, size_t)’ {aka ‘long int (*)(struct 
gnutls_session_int *, void *, long unsigned int)’} 
[-Wincompatible-pointer-types]
   29 | #define mock(name, func) mock_##name = func
      |                                      ^
../../tests/check_networked.c:412:3: note: in expansion of macro ‘mock’
  412 |   mock (gnutls_record_recv, _mock_gnutls_record_recv_message_part);
      |   ^~~~
../../tests/check_networked.c:296:1: note: 
‘_mock_gnutls_record_recv_message_part’ declared here
  296 | _mock_gnutls_record_recv_message_part (gnutls_session_t session,
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../tests/mocks.h:29:38: error: assignment to ‘ssize_t (*)(void)’ {aka ‘long 
int (*)(void)’} from incompatible pointer type ‘ssize_t (*)(struct 
gnutls_session_int *, void *, size_t)’ {aka ‘long int (*)(struct 
gnutls_session_int *, void *, long unsigned int)’} 
[-Wincompatible-pointer-types]
   29 | #define mock(name, func) mock_##name = func
      |                                      ^
../../tests/check_networked.c:426:3: note: in expansion of macro ‘mock’
  426 |   mock (gnutls_record_recv, _mock_gnutls_record_recv_message_garbage);
      |   ^~~~
../../tests/check_networked.c:312:1: note: 
‘_mock_gnutls_record_recv_message_garbage’ declared here
  312 | _mock_gnutls_record_recv_message_garbage (gnutls_session_t session,
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../tests/check_networked.c: In function ‘_mock_recv_message_part’:
../../tests/check_networked.c:500:10: error: too many arguments to function 
‘real_recv’; expected 0, have 4
  500 |   return real_recv (sockfd, buf, len, flags);
      |          ^~~~~~~~~  ~~~~~~
../../tests/check_networked.c: In function ‘_mock_recv_message_garbage’:
../../tests/check_networked.c:510:9: error: too many arguments to function 
‘real_recv’; expected 0, have 4
  510 |   res = real_recv (sockfd, buf, len, flags);
      |         ^~~~~~~~~  ~~~~~~
../../tests/check_networked.c: In function 
‘test_net_riemann_client_recv_message_fn’:
../../tests/mocks.h:29:38: error: assignment to ‘ssize_t (*)(void)’ {aka ‘long 
int (*)(void)’} from incompatible pointer type ‘ssize_t (*)(int,  void *, 
size_t,  int)’ {aka ‘long int (*)(int,  void *, long unsigned int,  int)’} 
[-Wincompatible-pointer-types]
   29 | #define mock(name, func) mock_##name = func
      |                                      ^
../../tests/check_networked.c:555:3: note: in expansion of macro ‘mock’
  555 |   mock (recv, _mock_recv_message_part);
      |   ^~~~
../../tests/check_networked.c:489:1: note: ‘_mock_recv_message_part’ declared 
here
  489 | _mock_recv_message_part (int sockfd, void *buf, size_t len, int flags)
      | ^~~~~~~~~~~~~~~~~~~~~~~
../../tests/mocks.h:29:38: error: assignment to ‘ssize_t (*)(void)’ {aka ‘long 
int (*)(void)’} from incompatible pointer type ‘ssize_t (*)(int,  void *, 
size_t,  int)’ {aka ‘long int (*)(int,  void *, long unsigned int,  int)’} 
[-Wincompatible-pointer-types]
   29 | #define mock(name, func) mock_##name = func
      |                                      ^
../../tests/check_networked.c:563:3: note: in expansion of macro ‘mock’
  563 |   mock (recv, _mock_recv_message_garbage);
      |   ^~~~
../../tests/check_networked.c:504:1: note: ‘_mock_recv_message_garbage’ 
declared here
  504 | _mock_recv_message_garbage (int sockfd, void *buf, size_t len, int 
flags)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:851: tests/check_networked.o] Error 1
make[2]: *** [Makefile:1395: check-am] Error 2
make[1]: *** [Makefile:1398: check] Error 2
make[1]: Leaving directory 
'/build/reproducible-path/riemann-c-client-1.10.4/debian/build-tree'
dh_auto_test: error: cd debian/build-tree && make -j1 check "TESTSUITEFLAGS=-j1 
--verbose" VERBOSE=1 returned exit code 2
make: *** [debian/rules:17: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

Reply via email to