Bug 1221685 - GCC 14: gdl package fails
Summary: GCC 14: gdl package fails
Status: NEW
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: GNOME (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: E-mail List
QA Contact: E-mail List
URL: https://gitlab.gnome.org/GNOME/gdl/-/...
Whiteboard:
Keywords:
Depends on:
Blocks: modern_C
  Show dependency treegraph
 
Reported: 2024-03-19 11:22 UTC by Michal Jireš
Modified: 2024-07-09 12:52 UTC (History)
1 user (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michal Jireš 2024-03-19 11:22:37 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.
Comment 1 Martin Jambor 2024-05-31 19:34:55 UTC
The corresponding Gentoo bug seems to be https://bugs.gentoo.org/919197
Comment 2 Martin Jambor 2024-07-09 11:59:27 UTC
Upstream issue: https://gitlab.gnome.org/GNOME/gdl/-/issues/9
Comment 3 Martin Jambor 2024-07-09 12:41:21 UTC
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
Comment 4 Martin Jambor 2024-07-09 12:52:59 UTC
I have submitted https://build.opensuse.org/request/show/1186392