[Pkg-deepin-devel] Bug#1096746: go-gir-generator: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 17:17:02 GMT 2025


Package: src:go-gir-generator
Version: 2.2.0-1
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/go-gir-generator_2.2.0-1_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

[...]
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1302:31: note: in expansion of macro ‘_GLIB_GNUC_DO_PRAGMA’
 1302 | #define GLIB_DEPRECATED_MACRO _GLIB_GNUC_DO_PRAGMA(GCC warning "Deprecated pre-processor symbol")
      |                               ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gobject-visibility.h:141:42: note: in expansion of macro ‘GLIB_DEPRECATED_MACRO’
  141 | #define GOBJECT_DEPRECATED_MACRO_IN_2_32 GLIB_DEPRECATED_MACRO
      |                                          ^~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gparamspecs.h:457:69: note: in expansion of macro ‘GOBJECT_DEPRECATED_MACRO_IN_2_32’
  457 | #define G_TYPE_PARAM_VALUE_ARRAY           (g_param_spec_types[18]) GOBJECT_DEPRECATED_MACRO_IN_2_32
      |                                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fix_gobject.c:74:50: note: in expansion of macro ‘G_TYPE_PARAM_VALUE_ARRAY’
   74 | GType _g_type_param_value_array()       { return G_TYPE_PARAM_VALUE_ARRAY; }
      |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~
cd out/src/github.com/linuxdeepin/go-gir/gio-2.0 && go build
# github.com/linuxdeepin/go-gir/gobject-2.0
In file included from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9,
                 from /usr/include/glib-2.0/glib/gtypes.h:34,
                 from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gobject/gbinding.h:30,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from fix_gobject.c:5:
fix_gobject.c: In function ‘_g_type_param_value_array’:
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1302:31: note: in expansion of macro ‘_GLIB_GNUC_DO_PRAGMA’
 1302 | #define GLIB_DEPRECATED_MACRO _GLIB_GNUC_DO_PRAGMA(GCC warning "Deprecated pre-processor symbol")
      |                               ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gobject-visibility.h:141:42: note: in expansion of macro ‘GLIB_DEPRECATED_MACRO’
  141 | #define GOBJECT_DEPRECATED_MACRO_IN_2_32 GLIB_DEPRECATED_MACRO
      |                                          ^~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gparamspecs.h:457:69: note: in expansion of macro ‘GOBJECT_DEPRECATED_MACRO_IN_2_32’
  457 | #define G_TYPE_PARAM_VALUE_ARRAY           (g_param_spec_types[18]) GOBJECT_DEPRECATED_MACRO_IN_2_32
      |                                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fix_gobject.c:74:50: note: in expansion of macro ‘G_TYPE_PARAM_VALUE_ARRAY’
   74 | GType _g_type_param_value_array()       { return G_TYPE_PARAM_VALUE_ARRAY; }
      |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~
# github.com/linuxdeepin/go-gir/gio-2.0
gio.gen.c:201:13: error: conflicting types for ‘_GAsyncReadyCallback_c_wrapper’; have ‘void(void)’
  201 | extern void _GAsyncReadyCallback_c_wrapper();
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from gio.gen.c:2:
cgo-gcc-export-header-prolog:50:13: note: previous declaration of ‘_GAsyncReadyCallback_c_wrapper’ with type ‘void(void *, void *, void *)’
gio.gen.c:202:13: error: conflicting types for ‘_GAsyncReadyCallback_c_wrapper_once’; have ‘void(void)’
  202 | extern void _GAsyncReadyCallback_c_wrapper_once();
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cgo-gcc-export-header-prolog:51:13: note: previous declaration of ‘_GAsyncReadyCallback_c_wrapper_once’ with type ‘void(void *, void *, void *)’
gio.gen.c:235:13: error: conflicting types for ‘_GDesktopAppLaunchCallback_c_wrapper’; have ‘void(void)’
  235 | extern void _GDesktopAppLaunchCallback_c_wrapper();
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cgo-gcc-export-header-prolog:52:13: note: previous declaration of ‘_GDesktopAppLaunchCallback_c_wrapper’ with type ‘void(void *, GoInt32,  void *)’ {aka ‘void(void *, int,  void *)’}
gio.gen.c:236:13: error: conflicting types for ‘_GDesktopAppLaunchCallback_c_wrapper_once’; have ‘void(void)’
  236 | extern void _GDesktopAppLaunchCallback_c_wrapper_once();
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cgo-gcc-export-header-prolog:53:13: note: previous declaration of ‘_GDesktopAppLaunchCallback_c_wrapper_once’ with type ‘void(void *, GoInt32,  void *)’ {aka ‘void(void *, int,  void *)’}
gio.gen.c:239:13: error: conflicting types for ‘_GFileProgressCallback_c_wrapper’; have ‘void(void)’
  239 | extern void _GFileProgressCallback_c_wrapper();
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cgo-gcc-export-header-prolog:54:13: note: previous declaration of ‘_GFileProgressCallback_c_wrapper’ with type ‘void(GoInt64,  GoInt64,  void *)’ {aka ‘void(long long int,  long long int,  void *)’}
gio.gen.c:240:13: error: conflicting types for ‘_GFileProgressCallback_c_wrapper_once’; have ‘void(void)’
  240 | extern void _GFileProgressCallback_c_wrapper_once();
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cgo-gcc-export-header-prolog:55:13: note: previous declaration of ‘_GFileProgressCallback_c_wrapper_once’ with type ‘void(GoInt64,  GoInt64,  void *)’ {aka ‘void(long long int,  long long int,  void *)’}
make[1]: *** [Makefile:41: test] Error 1
make[1]: Leaving directory '/build/reproducible-path/go-gir-generator-2.2.0'
dh_auto_test: error: make -j8 test returned exit code 2
make: *** [debian/rules:8: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-deepin-devel mailing list