Index: gtk+-2.11.5/demos/gtk-demo/changedisplay.c
===================================================================
--- gtk+-2.11.5.orig/demos/gtk-demo/changedisplay.c
+++ gtk+-2.11.5/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.11.5/demos/gtk-demo/textview.c
===================================================================
--- gtk+-2.11.5.orig/demos/gtk-demo/textview.c
+++ gtk+-2.11.5/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.11.5/gdk-pixbuf/queryloaders.c
===================================================================
--- gtk+-2.11.5.orig/gdk-pixbuf/queryloaders.c
+++ gtk+-2.11.5/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.11.5/gdk/x11/gdkdnd-x11.c
===================================================================
--- gtk+-2.11.5.orig/gdk/x11/gdkdnd-x11.c
+++ gtk+-2.11.5/gdk/x11/gdkdnd-x11.c
@@ -905,6 +905,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;
@@ -1259,6 +1260,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;
@@ -1461,6 +1463,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);
   
@@ -2395,7 +2398,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.11.5/gdk/x11/gdkevents-x11.c
===================================================================
--- gtk+-2.11.5.orig/gdk/x11/gdkevents-x11.c
+++ gtk+-2.11.5/gdk/x11/gdkevents-x11.c
@@ -514,6 +514,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;
@@ -2598,6 +2599,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.11.5/gdk/x11/gdkim-x11.c
===================================================================
--- gtk+-2.11.5.orig/gdk/x11/gdkim-x11.c
+++ gtk+-2.11.5/gdk/x11/gdkim-x11.c
@@ -130,6 +130,7 @@ find_a_display (void)
 gchar *
 gdk_wcstombs (const GdkWChar *src)
 {
+  gpointer vp_src = &src;
   gchar *mbstr;
 
   if (gdk_use_mb)
Index: gtk+-2.11.5/gdk/x11/gdkwindow-x11.c
===================================================================
--- gtk+-2.11.5.orig/gdk/x11/gdkwindow-x11.c
+++ gtk+-2.11.5/gdk/x11/gdkwindow-x11.c
@@ -5046,6 +5046,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.11.5/gtk/gtkmain.c
===================================================================
--- gtk+-2.11.5.orig/gtk/gtkmain.c
+++ gtk+-2.11.5/gtk/gtkmain.c
@@ -1329,7 +1329,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;
 
@@ -2197,12 +2198,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.11.5/gtk/gtkmodules.c
===================================================================
--- gtk+-2.11.5.orig/gtk/gtkmodules.c
+++ gtk+-2.11.5/gtk/gtkmodules.c
@@ -254,7 +254,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;
@@ -280,7 +280,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.11.5/gtk/gtkselection.c
===================================================================
--- gtk+-2.11.5.orig/gtk/gtkselection.c
+++ gtk+-2.11.5/gtk/gtkselection.c
@@ -1055,7 +1055,7 @@ gtk_selection_convert (GtkWidget *widget
   
   if (owner_window != NULL)
     {
-      GtkWidget *owner_widget;
+      void *owner_widget;
       GtkSelectionData selection_data;
       
       selection_data.selection = selection;
@@ -1064,7 +1064,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.11.5/gtk/gtktipsquery.c
===================================================================
--- gtk+-2.11.5.orig/gtk/gtktipsquery.c
+++ gtk+-2.11.5/gtk/gtktipsquery.c
@@ -445,7 +445,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);
@@ -468,12 +468,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.11.5/gtk/gtkwidget.c
===================================================================
--- gtk+-2.11.5.orig/gtk/gtkwidget.c
+++ gtk+-2.11.5/gtk/gtkwidget.c
@@ -4352,12 +4352,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);
@@ -4380,10 +4380,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.11.5/gtk/queryimmodules.c
===================================================================
--- gtk+-2.11.5.orig/gtk/queryimmodules.c
+++ gtk+-2.11.5/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<n_contexts; i++)
 	{
Index: gtk+-2.11.5/tests/testcalendar.c
===================================================================
--- gtk+-2.11.5.orig/tests/testcalendar.c
+++ gtk+-2.11.5/tests/testcalendar.c
@@ -18,6 +18,8 @@
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+/* gtk_calendar_display_options is deprecated */
+#undef GTK_DISABLE_DEPRECATED
 #include <config.h>
 #include <stdio.h>
 #include <string.h>
Index: gtk+-2.11.5/tests/testgtk.c
===================================================================
--- gtk+-2.11.5.orig/tests/testgtk.c
+++ gtk+-2.11.5/tests/testgtk.c
@@ -2400,7 +2400,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;
 
@@ -4778,7 +4778,7 @@ accel_button_new (GtkAccelGroup *accel_g
 static void
 create_key_lookup (GtkWidget *widget)
 {
-  static GtkWidget *window = NULL;
+  static gpointer window = NULL;
 
   if (!window)
     {
@@ -12041,7 +12041,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;
@@ -12049,12 +12049,12 @@ 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,
-			     &x, &y, NULL);
+       gdk_window_get_pointer (((GtkWidget *) widget)->window,
+                               &x, &y, NULL);
      
      data.x = x;
      data.y = y;
