Bugzilla – Bug 1221685
GCC 14: gdl package fails
Last modified: 2024-07-09 12:52:59 UTC
Building gdl with GCC 14 fails here: https://build.opensuse.org/package/live_build_log/openSUSE:Factory:Staging:Gcc7/gdl/standard/x86_64 Due to (exhaustive list of errors): gdl-dock-item.c: In function ‘gdl_dock_item_class_init’: gdl-dock-item.c:358:44: error: passing argument 1 of ‘gdl_dock_object_class_set_is_compound’ from incompatible pointer type [-Wincompatible-pointer-types] 358 | gdl_dock_object_class_set_is_compound (object_class, FALSE); | ^~~~~~~~~~~~ | | | GObjectClass * {aka struct _GObjectClass *} In file included from gdl-dock.h:26, from gdl-dock-item.c:38: ../gdl/gdl-dock-object.h:354:74: note: expected ‘GdlDockObjectClass *’ {aka ‘struct _GdlDockObjectClass *’} but argument is of type ‘GObjectClass *’ {aka ‘struct _GObjectClass *’} 354 | void gdl_dock_object_class_set_is_compound (GdlDockObjectClass *object_class, | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ gdl-dock-item.c: In function ‘gdl_dock_item_set_property’: gdl-dock-item.c:747:36: error: initialization of ‘GObject *’ {aka ‘struct _GObject *’} from incompatible pointer type ‘GtkWidget *’ {aka ‘struct _GtkWidget *’} [-Wincompatible-pointer-types] 747 | GObject * parent = gtk_widget_get_parent (GTK_WIDGET (item)); | ^~~~~~~~~~~~~~~~~~~~~ gdl-dock-layout.c: In function ‘gdl_dock_layout_set_master’: gdl-dock-layout.c:623:30: error: assignment to ‘GdlDockMaster *’ {aka ‘struct _GdlDockMaster *’} from incompatible pointer type ‘GObject *’ {aka ‘struct _GObject *’} [-Wincompatible-pointer-types] 623 | layout->priv->master = g_object_ref (master); | ^ gdl-dock-bar.c: In function ‘gdl_dock_bar_set_master’: gdl-dock-bar.c:428:31: error: assignment to ‘GdlDockMaster *’ {aka ‘struct _GdlDockMaster *’} from incompatible pointer type ‘GObject *’ {aka ‘struct _GObject *’} [-Wincompatible-pointer-types] 428 | dockbar->priv->master = g_object_ref (master); | ^ See the meta bug#1220571 for more info.
The corresponding Gentoo bug seems to be https://bugs.gentoo.org/919197
Upstream issue: https://gitlab.gnome.org/GNOME/gdl/-/issues/9
Given that immediately the next issue in the upstream project is called "Archive this project?" I am going to add -Wincompatible-pointer-types to the flags in order to suppress errors resulting from missing explicit type conversions to and from Gobject *. If the upstream ever comes alive again and fixes the issues, we can remove it again
I have submitted https://build.opensuse.org/request/show/1186392