I know it is deprecated but I still want to know the answer to this problem. In this example why GTK_RETLOC_INT() was used? Doesn't setting pointer address values arbitrarily create a problem(GtkArg's gint int_data(inside union d) can be anything)? Then why use it? Can anyone kindly explain the inner meanings? typedef gint (*GtkSignal_INT__POINTER) (GtkObject * object, gpointer arg1, gpointer user_data); void gtk_marshal_INT__POINTER (GtkObject * object, GtkSignalFunc func, gpointer func_data, GtkArg * args) { GtkSignal_INT__POINTER rfunc; gint *return_val; return_val = GTK_RETLOC_INT (args[1]); rfunc = (GtkSignal_INT__POINTER) func; *return_val = (*rfunc) (object, GTK_VALUE_POINTER (args[0]), func_data); } Thanks. --DC _________________________________________________________________ Experience Live Search from your PC or mobile device today. http://www.live.com/?mkt=en-ca _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list