static void menuitem_select (GtkWidget *menu_item, gpointer user_data) { GtkWidget *menu; GtkWidget *menu_items; gtk_menu_item_remove_submenu (GTK_MENU_ITEM (menu_item)); menu = gtk_menu_new (); menu_items = gtk_menu_item_new_with_label ("test"); gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); gtk_widget_show (menu_items); g_signal_connect (G_OBJECT (menu_items), "select", G_CALLBACK (menuitem_select), NULL); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu_item), menu); //get the menu item label text printf ("Show %s\n", gtk_label_get_text (GTK_LABEL (GTK_BIN (menu_item)->child))); } Program received signal SIGABRT, Aborted. 0xffffe410 in __kernel_vsyscall () #0 0xffffe410 in __kernel_vsyscall () #1 0x407b6541 in raise () from /lib/tls/libc.so.6 #2 0x407b7dbb in abort () from /lib/tls/libc.so.6 #3 0x4073a1a0 in g_logv () from /opt/gnome/lib/libglib-2.0.so.0 #4 0x4073a1e5 in g_log () from /opt/gnome/lib/libglib-2.0.so.0 #5 0x4073a33c in g_return_if_fail_warning () from /opt/gnome/lib/libglib-2.0.so.0 #6 0x40263df4 in gtk_widget_event () from /opt/gnome/lib/libgtk-x11-2.0.so.0 #7 0x4016ffc5 in gtk_propagate_event () from /opt/gnome/lib/libgtk-x11-2.0.so.0 #8 0x4017045f in gtk_main_do_event () from /opt/gnome/lib/libgtk-x11-2.0.so.0 #9 0x4037ae4a in gdk_screen_get_setting () from /opt/gnome/lib/libgdk-x11-2.0.so.0 #10 0x407325dc in g_main_context_dispatch () from /opt/gnome/lib/libglib-2.0.so.0 #11 0x40732c9b in g_main_context_dispatch () from /opt/gnome/lib/libglib-2.0.so.0 #12 0x40733187 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0 #13 0x4016f5d1 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0 #14 0x08049161 in main (argc=1, argv=0xbfd92174) at main.c:111 Kill the program being debugged? (y or n)