Bug 2256944 - rep-gtk: C type errors will lead to build failures
Summary: rep-gtk: C type errors will lead to build failures
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: rep-gtk
Version: rawhide
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Kim B. Heino
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PortingToModernCHelpNeeded
TreeView+ depends on / blocked
 
Reported: 2024-01-05 13:52 UTC by Florian Weimer
Modified: 2024-02-23 01:22 UTC (History)
1 user (show)

Fixed In Version: rep-gtk-0.90.8.3-20.fc40 rep-gtk-0.90.8.3-20.fc41 rep-gtk-0.90.8.3-20.fc39
Clone Of:
Environment:
Last Closed: 2024-02-13 21:00:34 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Florian Weimer 2024-01-05 13:52:12 UTC
GCC 14 will treat type errors like these as errors:

gtk-glue.c: In function 'Fgtk_window_get_position':
gtk-glue.c:5321:38: error: passing argument 2 of 'gtk_window_get_position' makes pointer from integer without a cast
 5321 |   gtk_window_get_position (c_window, c_x, c_y);
      |                                      ^~~
      |                                      |
      |                                      gint {aka int}
In file included from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from gtk-glue.c:4:
/usr/include/gtk-2.0/gtk/gtkwindow.h:383:52: note: expected 'gint *' {aka 'int *'} but argument is of type 'gint' {aka 'int'}
  383 |                                       gint        *root_x,
      |                                       ~~~~~~~~~~~~~^~~~~~
gtk-glue.c:5321:43: error: passing argument 3 of 'gtk_window_get_position' makes pointer from integer without a cast
 5321 |   gtk_window_get_position (c_window, c_x, c_y);
      |                                           ^~~
      |                                           |
      |                                           gint {aka int}
/usr/include/gtk-2.0/gtk/gtkwindow.h:384:52: note: expected 'gint *' {aka 'int *'} but argument is of type 'gint' {aka 'int'}
  384 |                                       gint        *root_y);
      |                                       ~~~~~~~~~~~~~^~~~~~
gtk-glue.c: In function 'Fgtk_window_get_frame_dimensions':
gtk-glue.c:5895:46: error: passing argument 2 of 'gtk_window_get_frame_dimensions' makes pointer from integer without a cast
 5895 |   gtk_window_get_frame_dimensions (c_window, c_left, c_top, c_right, c_bottom);
      |                                              ^~~~~~
      |                                              |
      |                                              gint {aka int}
/usr/include/gtk-2.0/gtk/gtkwindow.h:270:60: note: expected 'gint *' {aka 'int *'} but argument is of type 'gint' {aka 'int'}
  270 |                                                 gint      *left,
      |                                                 ~~~~~~~~~~~^~~~
gtk-glue.c:5895:54: error: passing argument 3 of 'gtk_window_get_frame_dimensions' makes pointer from integer without a cast
 5895 |   gtk_window_get_frame_dimensions (c_window, c_left, c_top, c_right, c_bottom);
      |                                                      ^~~~~
      |                                                      |
      |                                                      gint {aka int}
/usr/include/gtk-2.0/gtk/gtkwindow.h:271:60: note: expected 'gint *' {aka 'int *'} but argument is of type 'gint' {aka 'int'}
  271 |                                                 gint      *top,
      |                                                 ~~~~~~~~~~~^~~
gtk-glue.c:5895:61: error: passing argument 4 of 'gtk_window_get_frame_dimensions' makes pointer from integer without a cast
 5895 |   gtk_window_get_frame_dimensions (c_window, c_left, c_top, c_right, c_bottom);
      |                                                             ^~~~~~~
      |                                                             |
      |                                                             gint {aka int}
/usr/include/gtk-2.0/gtk/gtkwindow.h:272:60: note: expected 'gint *' {aka 'int *'} but argument is of type 'gint' {aka 'int'}
  272 |                                                 gint      *right,
      |                                                 ~~~~~~~~~~~^~~~~
gtk-glue.c:5895:70: error: passing argument 5 of 'gtk_window_get_frame_dimensions' makes pointer from integer without a cast
 5895 |   gtk_window_get_frame_dimensions (c_window, c_left, c_top, c_right, c_bottom);
      |                                                                      ^~~~~~~~
      |                                                                      |
      |                                                                      gint {aka int}
/usr/include/gtk-2.0/gtk/gtkwindow.h:273:60: note: expected 'gint *' {aka 'int *'} but argument is of type 'gint' {aka 'int'}
  273 |                                                 gint      *bottom);
      |                                                 ~~~~~~~~~~~^~~~~~


This code looks very broken and like to crash at run time. These function wrappers could probably be removed because clearly no one is calling them. (I don't know if the framework supports output parameters like that.)

Reproducible: Always

Comment 1 Fedora Update System 2024-02-13 20:58:52 UTC
FEDORA-2024-1811832f13 (rep-gtk-0.90.8.3-20.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-1811832f13

Comment 2 Fedora Update System 2024-02-13 21:00:34 UTC
FEDORA-2024-1811832f13 (rep-gtk-0.90.8.3-20.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 3 Fedora Update System 2024-02-13 21:01:43 UTC
FEDORA-2024-1a0398b1d2 (rep-gtk-0.90.8.3-20.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-1a0398b1d2

Comment 4 Fedora Update System 2024-02-14 01:48:41 UTC
FEDORA-2024-1a0398b1d2 (rep-gtk-0.90.8.3-20.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 5 Fedora Update System 2024-02-14 07:38:56 UTC
FEDORA-2024-f087801438 (rep-gtk-0.90.8.3-20.fc39) has been submitted as an update to Fedora 39.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-f087801438

Comment 6 Florian Weimer 2024-02-14 07:51:17 UTC
Thanks! Has https://src.fedoraproject.org/rpms/rep-gtk/blob/rawhide/f/gcc14-2.patch been submitted upstream?

Comment 7 Kim B. Heino 2024-02-14 08:01:35 UTC
Not yet, but I will. I'll recheck it before submitting. There are couple of pending warnings left but I think those can't be fixed easily.

As far as I know, those functions are mostly unused. Just like you said...

Comment 8 Fedora Update System 2024-02-15 01:36:51 UTC
FEDORA-2024-f087801438 has been pushed to the Fedora 39 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-f087801438`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-f087801438

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2024-02-23 01:22:41 UTC
FEDORA-2024-f087801438 (rep-gtk-0.90.8.3-20.fc39) has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.