Index: gtk+-2.8.4/demos/gtk-demo/changedisplay.c =================================================================== --- gtk+-2.8.4.orig/demos/gtk-demo/changedisplay.c +++ gtk+-2.8.4/demos/gtk-demo/changedisplay.c @@ -73,7 +73,7 @@ static GtkWidget * find_toplevel_at_pointer (GdkDisplay *display) { GdkWindow *pointer_window; - GtkWidget *widget = NULL; + gpointer widget = NULL; pointer_window = gdk_display_get_window_at_pointer (display, NULL, NULL); @@ -81,7 +81,7 @@ find_toplevel_at_pointer (GdkDisplay *di * to the widget that created it. */ if (pointer_window) - gdk_window_get_user_data (pointer_window, (gpointer*) &widget); + gdk_window_get_user_data (pointer_window, &widget); return widget ? gtk_widget_get_toplevel (widget) : NULL; } Index: gtk+-2.8.4/demos/gtk-demo/textview.c =================================================================== --- gtk+-2.8.4.orig/demos/gtk-demo/textview.c +++ gtk+-2.8.4/demos/gtk-demo/textview.c @@ -548,7 +548,7 @@ static void easter_egg_callback (GtkWidget *button, gpointer data) { - static GtkWidget *window = NULL; + static gpointer window = NULL; GtkTextBuffer *buffer; GtkWidget *view; GtkTextIter iter; @@ -587,7 +587,7 @@ easter_egg_callback (GtkWidget *button, gtk_container_add (GTK_CONTAINER (sw), view); g_object_add_weak_pointer (G_OBJECT (window), - (gpointer *) &window); + &window); gtk_window_set_default_size (GTK_WINDOW (window), 300, 400); Index: gtk+-2.8.4/gdk-pixbuf/queryloaders.c =================================================================== --- gtk+-2.8.4.orig/gdk-pixbuf/queryloaders.c +++ gtk+-2.8.4/gdk-pixbuf/queryloaders.c @@ -153,6 +153,7 @@ query_module (const char *dir, const cha GModule *module; void (*fill_info) (GdkPixbufFormat *info); void (*fill_vtable) (GdkPixbufModule *module); + gpointer pfi, pfv; if (g_path_is_absolute (file)) path = g_strdup (file); @@ -161,8 +162,8 @@ query_module (const char *dir, const cha module = g_module_open (path, 0); if (module && - g_module_symbol (module, "fill_info", (gpointer *) &fill_info) && - g_module_symbol (module, "fill_vtable", (gpointer *) &fill_vtable)) { + g_module_symbol (module, "fill_info", &pfi) && + g_module_symbol (module, "fill_vtable", &pfv)) { GdkPixbufFormat *info; GdkPixbufModule *vtable; @@ -184,6 +185,9 @@ query_module (const char *dir, const cha vtable->module = module; + fill_info = pfi; + fill_vtable = pfv; + (*fill_info) (info); (*fill_vtable) (vtable); Index: gtk+-2.8.4/gdk/x11/gdkdnd-x11.c =================================================================== --- gtk+-2.8.4.orig/gdk/x11/gdkdnd-x11.c +++ gtk+-2.8.4/gdk/x11/gdkdnd-x11.c @@ -915,6 +915,7 @@ motif_read_target_table (GdkDisplay *dis { guchar *data; MotifTargetTableHeader *header = NULL; + gpointer vp_header = &header; guchar *target_bytes = NULL; guchar *p; gboolean success = FALSE; @@ -1269,6 +1270,7 @@ motif_check_dest (GdkDisplay *display, gboolean retval = FALSE; guchar *data; MotifDragReceiverInfo *info; + gpointer vp_info = &info; Atom type = None; int format; unsigned long nitems, after; @@ -1468,6 +1470,7 @@ motif_read_initiator_info (GdkDisplay *d gulong bytes_after; guchar *data; MotifDragInitiatorInfo *initiator_info; + gpointer vp_initiator_info = &initiator_info; GdkDisplayX11 *display_x11 = GDK_DISPLAY_X11 (display); @@ -2402,7 +2405,9 @@ xdnd_check_dest (GdkDisplay *display, unsigned long nitems, after; guchar *data; Atom *version; + gpointer vp_version = &version; Window *proxy_data; + gpointer vp_proxy_data = &proxy_data; Window proxy; Atom xdnd_proxy_atom = gdk_x11_get_xatom_by_name_for_display (display, "XdndProxy"); Atom xdnd_aware_atom = gdk_x11_get_xatom_by_name_for_display (display, "XdndAware"); Index: gtk+-2.8.4/gdk/x11/gdkevents-x11.c =================================================================== --- gtk+-2.8.4.orig/gdk/x11/gdkevents-x11.c +++ gtk+-2.8.4/gdk/x11/gdkevents-x11.c @@ -496,6 +496,7 @@ gdk_check_wm_state_changed (GdkWindow *w gulong bytes_after; guchar *data; Atom *atoms = NULL; + gpointer vp_atoms = &atoms; gulong i; gboolean had_sticky = toplevel->have_sticky; @@ -2540,6 +2541,7 @@ fetch_net_wm_check_window (GdkScreen *sc gulong bytes_after; guchar *data; Window *xwindow; + gpointer vp_xwindow = &xwindow; /* This function is very slow on every call if you are not running a * spec-supporting WM. For now not optimized, because it isn't in Index: gtk+-2.8.4/gdk/x11/gdkim-x11.c =================================================================== --- gtk+-2.8.4.orig/gdk/x11/gdkim-x11.c +++ gtk+-2.8.4/gdk/x11/gdkim-x11.c @@ -134,6 +134,7 @@ find_a_display (void) gchar * gdk_wcstombs (const GdkWChar *src) { + gpointer vp_src = &src; gchar *mbstr; if (gdk_use_mb) Index: gtk+-2.8.4/gdk/x11/gdkwindow-x11.c =================================================================== --- gtk+-2.8.4.orig/gdk/x11/gdkwindow-x11.c +++ gtk+-2.8.4/gdk/x11/gdkwindow-x11.c @@ -4729,6 +4729,7 @@ gdk_window_set_mwm_hints (GdkWindow *win Atom hints_atom = None; guchar *data; MotifWmHints *hints; + gpointer vp_hints = &hints; Atom type; gint format; gulong nitems; Index: gtk+-2.8.4/gtk/gtkmain.c =================================================================== --- gtk+-2.8.4.orig/gtk/gtkmain.c +++ gtk+-2.8.4/gtk/gtkmain.c @@ -1156,7 +1156,8 @@ static GdkEvent * rewrite_event_for_grabs (GdkEvent *event) { GdkWindow *grab_window; - GtkWidget *event_widget, *grab_widget; + GtkWidget *event_widget; + gpointer grab_widget; gboolean owner_events; GdkDisplay *display; @@ -2040,12 +2041,12 @@ gtk_get_current_event_state (GdkModifier GtkWidget* gtk_get_event_widget (GdkEvent *event) { - GtkWidget *widget; + gpointer widget; widget = NULL; if (event && event->any.window && (event->type == GDK_DESTROY || !GDK_WINDOW_DESTROYED (event->any.window))) - gdk_window_get_user_data (event->any.window, (void**) &widget); + gdk_window_get_user_data (event->any.window, &widget); return widget; } Index: gtk+-2.8.4/gtk/gtkmodules.c =================================================================== --- gtk+-2.8.4.orig/gtk/gtkmodules.c +++ gtk+-2.8.4/gtk/gtkmodules.c @@ -252,7 +252,7 @@ static GSList * load_module (GSList *module_list, const gchar *name) { - GtkModuleInitFunc modinit_func; + gpointer modinit_func; GtkModuleInfo *info = NULL; GModule *module = NULL; GSList *l; @@ -278,7 +278,7 @@ load_module (GSList *module_list, if (module) { - if (!g_module_symbol (module, "gtk_module_init", (gpointer *) &modinit_func) || + if (!g_module_symbol (module, "gtk_module_init", &modinit_func) || !modinit_func) g_module_close (module); else Index: gtk+-2.8.4/gtk/gtkselection.c =================================================================== --- gtk+-2.8.4.orig/gtk/gtkselection.c +++ gtk+-2.8.4/gtk/gtkselection.c @@ -945,7 +945,7 @@ gtk_selection_convert (GtkWidget *widget if (owner_window != NULL) { - GtkWidget *owner_widget; + void *owner_widget; GtkSelectionData selection_data; selection_data.selection = selection; @@ -954,7 +954,7 @@ gtk_selection_convert (GtkWidget *widget selection_data.length = -1; selection_data.display = display; - gdk_window_get_user_data (owner_window, (gpointer *)&owner_widget); + gdk_window_get_user_data (owner_window, &owner_widget); if (owner_widget != NULL) { Index: gtk+-2.8.4/gtk/gtktipsquery.c =================================================================== --- gtk+-2.8.4.orig/gtk/gtktipsquery.c +++ gtk+-2.8.4/gtk/gtktipsquery.c @@ -444,7 +444,7 @@ gtk_tips_query_event (GtkWidget * GdkEvent *event) { GtkTipsQuery *tips_query; - GtkWidget *event_widget; + gpointer event_widget; gboolean event_handled; g_return_val_if_fail (GTK_IS_TIPS_QUERY (widget), FALSE); @@ -467,12 +467,12 @@ gtk_tips_query_event (GtkWidget * case GDK_LEAVE_NOTIFY: if (event_widget) - pointer_window = gdk_window_get_pointer (event_widget->window, NULL, NULL, NULL); + pointer_window = gdk_window_get_pointer (((GtkWidget*)event_widget)->window, NULL, NULL, NULL); else pointer_window = NULL; event_widget = NULL; if (pointer_window) - gdk_window_get_user_data (pointer_window, (gpointer*) &event_widget); + gdk_window_get_user_data (pointer_window, &event_widget); gtk_tips_query_emit_widget_entered (tips_query, event_widget); event_handled = TRUE; break; Index: gtk+-2.8.4/gtk/gtkwidget.c =================================================================== --- gtk+-2.8.4.orig/gtk/gtkwidget.c +++ gtk+-2.8.4/gtk/gtkwidget.c @@ -3819,12 +3819,12 @@ gtk_widget_reparent_subwindows (GtkWidge for (tmp_list = children; tmp_list; tmp_list = tmp_list->next) { - GtkWidget *child; + gpointer child; GdkWindow *window = tmp_list->data; - gdk_window_get_user_data (window, (void **)&child); + gdk_window_get_user_data (window, &child); while (child && child != widget) - child = child->parent; + child = ((GtkWidget*)child)->parent; if (child) gdk_window_reparent (window, new_window, 0, 0); @@ -3847,10 +3847,10 @@ gtk_widget_reparent_subwindows (GtkWidge for (tmp_list = children; tmp_list; tmp_list = tmp_list->next) { - GtkWidget *child; + gpointer child; GdkWindow *window = tmp_list->data; - gdk_window_get_user_data (window, (void **)&child); + gdk_window_get_user_data (window, &child); if (child == widget) gdk_window_reparent (window, new_window, 0, 0); } Index: gtk+-2.8.4/gtk/queryimmodules.c =================================================================== --- gtk+-2.8.4.orig/gtk/queryimmodules.c +++ gtk+-2.8.4/gtk/queryimmodules.c @@ -89,11 +89,10 @@ print_escaped (const char *str) static gboolean query_module (const char *dir, const char *name) { - void (*list) (const GtkIMContextInfo ***contexts, - guint *n_contexts); - void (*init) (GTypeModule *type_module); - void (*exit) (void); - GtkIMContext *(*create) (const gchar *context_id); + gpointer list; + gpointer init; + gpointer exit; + gpointer create; GModule *module; gchar *path; @@ -113,10 +112,10 @@ query_module (const char *dir, const cha } if (module && - g_module_symbol (module, "im_module_list", (gpointer *) &list) && - g_module_symbol (module, "im_module_init", (gpointer *) &init) && - g_module_symbol (module, "im_module_exit", (gpointer *) &exit) && - g_module_symbol (module, "im_module_create", (gpointer *) &create)) + g_module_symbol (module, "im_module_list", &list) && + g_module_symbol (module, "im_module_init", &init) && + g_module_symbol (module, "im_module_exit", &exit) && + g_module_symbol (module, "im_module_create", &create)) { const GtkIMContextInfo **contexts; guint n_contexts; @@ -125,7 +124,7 @@ query_module (const char *dir, const cha print_escaped (path); fputs ("\n", stdout); - (*list) (&contexts, &n_contexts); + ((void(*)(const GtkIMContextInfo ***, guint *)) list) (&contexts, &n_contexts); for (i=0; i #include #include Index: gtk+-2.8.4/tests/testgtk.c =================================================================== --- gtk+-2.8.4.orig/tests/testgtk.c +++ gtk+-2.8.4/tests/testgtk.c @@ -2231,7 +2231,7 @@ gridded_geometry_response (GtkDialog *di static void create_gridded_geometry (GtkWidget *widget) { - static GtkWidget *window = NULL; + static gpointer window = NULL; GtkWidget *entry; GtkWidget *label; @@ -2255,7 +2255,7 @@ create_gridded_geometry (GtkWidget *widg g_signal_connect (window, "response", G_CALLBACK (gridded_geometry_response), entry); - g_object_add_weak_pointer (G_OBJECT (window), (gpointer *)&window); + g_object_add_weak_pointer (G_OBJECT (window), &window); gtk_widget_show_all (window); } @@ -4607,7 +4607,7 @@ accel_button_new (GtkAccelGroup *accel_g static void create_key_lookup (GtkWidget *widget) { - static GtkWidget *window = NULL; + static gpointer window = NULL; if (!window) { @@ -4648,7 +4648,7 @@ create_key_lookup (GtkWidget *widget) button = gtk_button_new_with_mnemonic ("Button 11 (_!)"); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), button, FALSE, FALSE, 0); - g_object_add_weak_pointer (G_OBJECT (window), (gpointer *)&window); + g_object_add_weak_pointer (G_OBJECT (window), &window); g_signal_connect (window, "response", G_CALLBACK (gtk_object_destroy), NULL); gtk_widget_show_all (window); @@ -11784,7 +11784,7 @@ find_widget (GtkWidget *widget, FindWidg static GtkWidget * find_widget_at_pointer (GdkDisplay *display) { - GtkWidget *widget = NULL; + gpointer widget = NULL; GdkWindow *pointer_window; gint x, y; FindWidgetData data; @@ -11792,11 +11792,11 @@ find_widget_at_pointer (GdkDisplay *disp pointer_window = gdk_display_get_window_at_pointer (display, NULL, NULL); if (pointer_window) - gdk_window_get_user_data (pointer_window, (gpointer*) &widget); + gdk_window_get_user_data (pointer_window, &widget); if (widget) { - gdk_window_get_pointer (widget->window, + gdk_window_get_pointer (((GtkWidget *)widget)->window, &x, &y, NULL); data.x = x;