Patch 8.2.1875

15 views
Skip to first unread message

Bram Moolenaar

unread,
Oct 21, 2020, 6:38:42 AM10/21/20
to vim...@googlegroups.com

Patch 8.2.1875
Problem: Warning when building GTK gui.
Solution: Add missing function parameter.
Files: src/gui_gtk_f.c


*** ../vim-8.2.1874/src/gui_gtk_f.c 2020-04-12 19:37:13.510297280 +0200
--- src/gui_gtk_f.c 2020-10-21 12:15:23.445883076 +0200
***************
*** 51,57 ****


static void gtk_form_class_init(GtkFormClass *klass);
! static void gtk_form_init(GtkForm *form);

static void gtk_form_realize(GtkWidget *widget);
static void gtk_form_unrealize(GtkWidget *widget);
--- 51,57 ----


static void gtk_form_class_init(GtkFormClass *klass);
! static void gtk_form_init(GtkForm *form, void *g_class);

static void gtk_form_realize(GtkWidget *widget);
static void gtk_form_unrealize(GtkWidget *widget);
***************
*** 270,276 ****
}

static void
! gtk_form_init(GtkForm *form)
{
#if GTK_CHECK_VERSION(3,0,0)
gtk_widget_set_has_window(GTK_WIDGET(form), TRUE);
--- 270,276 ----
}

static void
! gtk_form_init(GtkForm *form, void *g_class UNUSED)
{
#if GTK_CHECK_VERSION(3,0,0)
gtk_widget_set_has_window(GTK_WIDGET(form), TRUE);
*** ../vim-8.2.1874/src/version.c 2020-10-21 12:19:50.080854732 +0200
--- src/version.c 2020-10-21 12:37:27.814864303 +0200
***************
*** 752,753 ****
--- 752,755 ----
{ /* Add new patch number below this line */
+ /**/
+ 1875,
/**/

--
Common sense is what tells you that the world is flat.

/// Bram Moolenaar -- Br...@Moolenaar.net -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///

Tony Mechelynck

unread,
Oct 21, 2020, 8:53:48 AM10/21/20
to vim_dev
On Wed, Oct 21, 2020 at 12:38 PM Bram Moolenaar <Br...@moolenaar.net> wrote:
>
>
> Patch 8.2.1875
> Problem: Warning when building GTK gui.
> Solution: Add missing function parameter.
> Files: src/gui_gtk_f.c

Fatal error in gui_gtk_f.c after applying patches 8.2.1874 to 1876
(not yet 1877):

gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -pthread
-I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0
-I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0
-I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0
-I/usr/include/gio-unix-2.0 -I/usr/include/libxkbcommon
-I/usr/include/wayland -I/usr/include/cairo -I/usr/include/pango-1.0
-I/usr/include/fribidi -I/usr/include/harfbuzz -I/usr/include/atk-1.0
-I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2
-I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0
-I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid
-I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -O2
-fno-strength-reduce -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
-o objects/gui_gtk_f.o gui_gtk_f.c
In file included from /usr/include/glib-2.0/gobject/gobject.h:24:0,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:23,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:28,
from /usr/include/gtk-3.0/gdk/gdk.h:32,
from /usr/include/gtk-3.0/gtk/gtk.h:30,
from beval.h:15,
from vim.h:1810,
from gui_gtk_f.c:28:
gui_gtk_f.c:215:24: error: conflicting types for ‘gtk_form_init’
G_DEFINE_TYPE(GtkForm, gtk_form, GTK_TYPE_CONTAINER)
^
/usr/include/glib-2.0/gobject/gtype.h:1979:17: note: in definition of
macro ‘_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE’
static void type_name##_init (TypeName *self); \
^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1761:60: note: in expansion of
macro ‘_G_DEFINE_TYPE_EXTENDED_BEGIN’
#define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)
_G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;}
_G_DEFINE_TYPE_EXTENDED_END()

^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1602:43: note: in expansion of
macro ‘G_DEFINE_TYPE_EXTENDED’
#define G_DEFINE_TYPE(TN, t_n, T_P) G_DEFINE_TYPE_EXTENDED (TN,
t_n, T_P, 0, {})
^~~~~~~~~~~~~~~~~~~~~~
gui_gtk_f.c:215:1: note: in expansion of macro ‘G_DEFINE_TYPE’
G_DEFINE_TYPE(GtkForm, gtk_form, GTK_TYPE_CONTAINER)
^~~~~~~~~~~~~
gui_gtk_f.c:54:13: note: previous declaration of ‘gtk_form_init’ was here
static void gtk_form_init(GtkForm *form, void *g_class);
^~~~~~~~~~~~~
gui_gtk_f.c:273:1: error: conflicting types for ‘gtk_form_init’
gtk_form_init(GtkForm *form, void *g_class UNUSED)
^~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:24:0,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:23,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:28,
from /usr/include/gtk-3.0/gdk/gdk.h:32,
from /usr/include/gtk-3.0/gtk/gtk.h:30,
from beval.h:15,
from vim.h:1810,
from gui_gtk_f.c:28:
gui_gtk_f.c:215:24: note: previous declaration of ‘gtk_form_init’ was here
G_DEFINE_TYPE(GtkForm, gtk_form, GTK_TYPE_CONTAINER)
^
/usr/include/glib-2.0/gobject/gtype.h:1979:17: note: in definition of
macro ‘_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE’
static void type_name##_init (TypeName *self); \
^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1761:60: note: in expansion of
macro ‘_G_DEFINE_TYPE_EXTENDED_BEGIN’
#define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)
_G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;}
_G_DEFINE_TYPE_EXTENDED_END()

^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1602:43: note: in expansion of
macro ‘G_DEFINE_TYPE_EXTENDED’
#define G_DEFINE_TYPE(TN, t_n, T_P) G_DEFINE_TYPE_EXTENDED (TN,
t_n, T_P, 0, {})
^~~~~~~~~~~~~~~~~~~~~~
gui_gtk_f.c:215:1: note: in expansion of macro ‘G_DEFINE_TYPE’
G_DEFINE_TYPE(GtkForm, gtk_form, GTK_TYPE_CONTAINER)
^~~~~~~~~~~~~
gui_gtk_f.c:215:24: warning: ‘gtk_form_init’ used but never defined
G_DEFINE_TYPE(GtkForm, gtk_form, GTK_TYPE_CONTAINER)
^
/usr/include/glib-2.0/gobject/gtype.h:1979:17: note: in definition of
macro ‘_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE’
static void type_name##_init (TypeName *self); \
^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1761:60: note: in expansion of
macro ‘_G_DEFINE_TYPE_EXTENDED_BEGIN’
#define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)
_G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;}
_G_DEFINE_TYPE_EXTENDED_END()

^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1602:43: note: in expansion of
macro ‘G_DEFINE_TYPE_EXTENDED’
#define G_DEFINE_TYPE(TN, t_n, T_P) G_DEFINE_TYPE_EXTENDED (TN,
t_n, T_P, 0, {})
^~~~~~~~~~~~~~~~~~~~~~
gui_gtk_f.c:215:1: note: in expansion of macro ‘G_DEFINE_TYPE’
G_DEFINE_TYPE(GtkForm, gtk_form, GTK_TYPE_CONTAINER)
^~~~~~~~~~~~~
gui_gtk_f.c:273:1: warning: ‘gtk_form_init’ defined but not used
[-Wunused-function]
gtk_form_init(GtkForm *form, void *g_class UNUSED)
^~~~~~~~~~~~~
make: *** [Makefile:3285: objects/gui_gtk_f.o] Error 1
exit status 2
Wed 21 Oct 14:46:32 CEST 2020

Best regards,
Tony.

Tony Mechelynck

unread,
Oct 21, 2020, 9:15:00 AM10/21/20
to vim_dev, Bram Moolenaar
P.S. "make reconfig" does not clear the problem. My GTK3 version is
3.24.20 and my compiler is gcc 7.5.0.

Bram Moolenaar

unread,
Oct 21, 2020, 10:11:12 AM10/21/20
to vim...@googlegroups.com, Tony Mechelynck
This must always have been a problem, we got away with it because the
function signatures happened to be the same.

It looks like prepending local functions with "gtk_" is asking for
trouble, since most gtk library functions start with that. Seems safe
to just remove the "gtk_" prefix for all of them.

--
hundred-and-one symptoms of being an internet addict:
93. New mail alarm on your palmtop annoys other churchgoers.
Reply all
Reply to author
Forward
0 new messages