diff -Nurw gcin-1.4.7~pre3.orig/eve.cpp gcin-1.4.7~pre3/eve.cpp
--- gcin-1.4.7~pre3.orig/eve.cpp	2010-01-10 13:51:57.000000000 +0800
+++ gcin-1.4.7~pre3/eve.cpp	2010-01-10 20:05:58.000000000 +0800
@@ -521,7 +521,7 @@
 void win_tsin_disp_half_full();
 void win_gtab_disp_half_full();
 extern char eng_full_str[], full_char_str[];
-void update_tray_icon(), load_tray_icon_win32();
+void update_tray_icon(), load_tray_icon(), load_tray_icon_win32();
 static int current_gcin_win32_icon = -1;
 void restart_gcin0();
 
@@ -747,7 +747,7 @@
 
 extern int b_show_win_kbm;
 
-void load_tray_icon(), hide_win_kbm();
+void hide_win_kbm();
 extern gboolean win_sym_enabled;
 int init_win_anthy();
 void show_win_kbm();
diff -Nurw gcin-1.4.7~pre3.orig/anthy.cpp gcin-1.4.7~pre3/anthy.cpp
--- gcin-1.4.7~pre3.orig/anthy.cpp	2009-12-17 21:02:20.000000000 +0800
+++ gcin-1.4.7~pre3/anthy.cpp	2010-01-10 22:11:34.071036274 +0800
@@ -934,9 +934,9 @@
     return FALSE;
   }
 
-  int (*f_anthy_create_context)();
+  anthy_context_t (*f_anthy_create_context)();
   *(void **) (&f_anthy_create_context) = dlsym(handle, "anthy_create_context");
-  ac = (anthy_context_t)(*f_anthy_create_context)();
+  ac = (*f_anthy_create_context)();
   if (!ac) {
     printf("anthy_create_context err\n");
     return FALSE;
diff -Nurw gcin-1.4.7~pre3.orig/gcin-setup-pho.cpp gcin-1.4.7~pre3/gcin-setup-pho.cpp
--- gcin-1.4.7~pre3.orig/gcin-setup-pho.cpp	2009-10-25 15:30:06.000000000 +0800
+++ gcin-1.4.7~pre3/gcin-setup-pho.cpp	2010-01-10 22:14:44.942539292 +0800
@@ -164,7 +164,7 @@
 
 static void callback_button_clicked_tsin_space_opt( GtkWidget *widget, gpointer data)
 {
-  new_select_idx_tsin_space_opt = (int) data;
+  new_select_idx_tsin_space_opt = (gsize) data;
 }
 
 
@@ -429,7 +429,7 @@
   int current_idx = get_currnet_tsin_space_option_idx();
   new_select_idx_tsin_space_opt = current_idx;
 
-  int i;
+  gsize i;
   for(i=0; i< tsin_space_optionsN; i++) {
     GtkWidget *button = gtk_radio_button_new_with_label (group_tsin_space_opt, _(tsin_space_options[i].name));
     gtk_box_pack_start (GTK_BOX (box_tsin_space_opt), button, TRUE, TRUE, 0);
diff -Nurw gcin-1.4.7~pre3.orig/gcin-setup-tab.cpp gcin-1.4.7~pre3/gcin-setup-tab.cpp
--- gcin-1.4.7~pre3.orig/gcin-setup-tab.cpp	2009-12-06 07:46:24.000000000 +0800
+++ gcin-1.4.7~pre3/gcin-setup-tab.cpp	2010-01-10 22:14:02.435036396 +0800
@@ -134,7 +134,7 @@
 
 static void callback_button_clicked_tsin_space_opt( GtkWidget *widget, gpointer data)
 {
-  new_select_idx_tsin_space_opt = (int) data;
+  new_select_idx_tsin_space_opt = (gsize) data;
 }
 
 static int get_currnet_tsin_space_option_idx()
@@ -1773,7 +1773,7 @@
   int current_idx = get_currnet_tsin_space_option_idx();
   new_select_idx_tsin_space_opt = current_idx;
 
-  int i;
+  gsize i;
   for(i=0; i< tsin_space_optionsN; i++) {
     GtkWidget *button = gtk_radio_button_new_with_label (group_tsin_space_opt, _(tsin_space_options[i].name));
     gtk_box_pack_start (GTK_BOX (box_tsin_space_opt), button, TRUE, TRUE, 0);
diff -Nurw gcin-1.4.7~pre3.orig/gtk-im/gtkimcontextgcin.c gcin-1.4.7~pre3/gtk-im/gtkimcontextgcin.c
--- gcin-1.4.7~pre3.orig/gtk-im/gtkimcontextgcin.c	2009-12-16 09:56:52.000000000 +0800
+++ gcin-1.4.7~pre3/gtk-im/gtkimcontextgcin.c	2010-01-10 22:12:40.498538639 +0800
@@ -410,7 +410,7 @@
   if (!lc_ctype || !strstr(lc_ctype, "UTF-8")) {
     int uni = gdk_keyval_to_unicode(event->keyval);
     if (uni) {
-      unsigned int rn;
+      gsize rn;
       GError *err = NULL;
       char *utf8 = g_convert((char *)&uni, 4, "UTF-8", "UTF-32", &rn, &num_bytes, &err);
 
diff -Nurw gcin-1.4.7~pre3.orig/intcode.cpp gcin-1.4.7~pre3/intcode.cpp
--- gcin-1.4.7~pre3.orig/intcode.cpp	2009-08-07 12:25:45.000000000 +0800
+++ gcin-1.4.7~pre3/intcode.cpp	2010-01-10 22:09:47.438748236 +0800
@@ -26,7 +26,7 @@
 
 static void utf32to8(char *t, char *s)
 {
-  unsigned int rn,wn=0;
+  gsize rn,wn=0;
   GError *err = NULL;
   char *utf8 = g_convert(s, 4, "UTF-8", "UTF-32", &rn, &wn, &err);
 
diff -Nurw gcin-1.4.7~pre3.orig/tray.cpp gcin-1.4.7~pre3/tray.cpp
--- gcin-1.4.7~pre3.orig/tray.cpp	2010-01-10 11:09:15.000000000 +0800
+++ gcin-1.4.7~pre3/tray.cpp	2010-01-10 22:12:00.482535526 +0800
@@ -325,7 +325,7 @@
 
 void destroy_tray_icon()
 {
-  gtk_widget_destroy(egg_tray_icon);
+  gtk_widget_destroy(GTK_WIDGET(egg_tray_icon));
   egg_tray_icon = NULL; da = NULL;
 }
 
