I'm fairly certain this is a bug in the test itself.
If you take a look at glib2.0/gobject/gmarshal.c g_cclosure_marshal_VOID__PARAM, you see
typedef void (*GMarshalFunc_VOID__PARAM) (gpointer data1, gpointer arg_1, gpointer data2);
That says to me that all of the signal functions in gtk/tests/builder.c should be declared as
signal_normal (GtkWindow *window, GParamSpec *spec)
not
signal_normal (GtkWindow *window, GParamSpec spec)
The "spec" parameter corresponds to "arg_1" in the typedef, which is a pointer.
I'm fairly certain this is a bug in the test itself.
If you take a look at glib2.0/ gobject/ gmarshal. c g_cclosure_ marshal_ VOID__PARAM, you see VOID__PARAM) (gpointer data1,
gpointer arg_1,
gpointer data2);
typedef void (*GMarshalFunc_
That says to me that all of the signal functions in gtk/tests/builder.c should be declared as
signal_normal (GtkWindow *window, GParamSpec *spec)
not
signal_normal (GtkWindow *window, GParamSpec spec)
The "spec" parameter corresponds to "arg_1" in the typedef, which is a pointer.