--- Begin Message ---
Package: zangband
Severity: normal
Tags: patch
When building 'zangband' on amd64 with gcc-4.0,
I get the following error:
src/main-gtk.c:2254: error: (near initialization for
'main_menu_items[14].callback_action')
src/main-gtk.c:2265: error: initializer element is not constant
src/main-gtk.c:2265: error: (near initialization for
'main_menu_items[17].callback_action')
src/main-gtk.c:2267: error: initializer element is not constant
src/main-gtk.c:2267: error: (near initialization for
'main_menu_items[18].callback_action')
src/main-gtk.c:2269: error: initializer element is not constant
src/main-gtk.c:2269: error: (near initialization for
'main_menu_items[19].callback_action')
src/main-gtk.c:2271: error: initializer element is not constant
src/main-gtk.c:2271: error: (near initialization for
'main_menu_items[20].callback_action')
src/main-gtk.c:2273: error: initializer element is not constant
src/main-gtk.c:2273: error: (near initialization for
'main_menu_items[21].callback_action')
src/main-gtk.c:2275: error: initializer element is not constant
src/main-gtk.c:2275: error: (near initialization for
'main_menu_items[22].callback_action')
src/main-gtk.c:2277: error: initializer element is not constant
src/main-gtk.c:2277: error: (near initialization for
'main_menu_items[23].callback_action')
src/main-gtk.c:2279: error: initializer element is not constant
src/main-gtk.c:2279: error: (near initialization for
'main_menu_items[24].callback_action')
make[1]: *** [src/main-gtk.o] Error 1
make[1]: Leaving directory `/zangband-2.7.3'
make: *** [build-stamp] Error 2
With the attached patch 'zangband' can be compiled
on amd64 using gcc-4.0.
Regards
Andreas Jochens
diff -urN ../tmp-orig/zangband-2.7.3/src/main-gtk.c ./src/main-gtk.c
--- ../tmp-orig/zangband-2.7.3/src/main-gtk.c 2003-04-05 19:02:02.000000000
+0000
+++ ./src/main-gtk.c 2005-02-28 13:00:01.294987859 +0000
@@ -1218,7 +1218,7 @@
{
GtkWidget *font_selector = gtk_font_selection_dialog_new("Select font");
- term_data *td = user_data;
+ term_data *td = (term_data*) &data[(long)user_data];
gchar *foundery[] = { (char * ) "misc", NULL};
gchar *spacings[] = { (char * ) "c", (char *) "m", NULL };
gchar *charsets[] = { (char * ) "iso8859-1", NULL};
@@ -1263,7 +1263,7 @@
*/
static void term_event_handler(GtkWidget *widget, gpointer user_data)
{
- term_data *td = (term_data *)user_data;
+ term_data *td = (term_data *) &data[(long)user_data];
/* Ignore unused parameter */
(void) widget;
@@ -2237,21 +2237,21 @@
NULL, 0, (char * ) "<Branch>" },
/* XXX XXX XXX NULL's are replaced by the program */
{ NULL, (char * ) "<mod1>0",
- term_event_handler, (guint)&data[0], (char * ) "<CheckItem>" },
+ term_event_handler, 0, (char * ) "<CheckItem>" },
{ NULL, (char * ) "<mod1>1",
- term_event_handler, (guint)&data[1], (char * ) "<CheckItem>" },
+ term_event_handler, 1, (char * ) "<CheckItem>" },
{ NULL, (char * ) "<mod1>2",
- term_event_handler, (guint)&data[2], (char * ) "<CheckItem>" },
+ term_event_handler, 2, (char * ) "<CheckItem>" },
{ NULL, (char * ) "<mod1>3",
- term_event_handler, (guint)&data[3], (char * ) "<CheckItem>" },
+ term_event_handler, 3, (char * ) "<CheckItem>" },
{ NULL, (char * ) "<mod1>4",
- term_event_handler, (guint)&data[4], (char * ) "<CheckItem>" },
+ term_event_handler, 4, (char * ) "<CheckItem>" },
{ NULL, (char * ) "<mod1>5",
- term_event_handler, (guint)&data[5], (char * ) "<CheckItem>" },
+ term_event_handler, 5, (char * ) "<CheckItem>" },
{ NULL, (char * ) "<mod1>6",
- term_event_handler, (guint)&data[6], (char * ) "<CheckItem>" },
+ term_event_handler, 6, (char * ) "<CheckItem>" },
{ NULL, (char * ) "<mod1>7",
- term_event_handler, (guint)&data[7], (char * ) "<CheckItem>" },
+ term_event_handler, 7, (char * ) "<CheckItem>" },
/* "Options" menu */
{ (char * ) "/Options", NULL,
@@ -2262,21 +2262,21 @@
NULL, 0, (char * ) "<Branch>" },
/* XXX XXX XXX Again, NULL's are filled by the program */
{ NULL, NULL,
- change_font_event_handler, (guint)&data[0], NULL },
+ change_font_event_handler, 0, NULL },
{ NULL, NULL,
- change_font_event_handler, (guint)&data[1], NULL },
+ change_font_event_handler, 1, NULL },
{ NULL, NULL,
- change_font_event_handler, (guint)&data[2], NULL },
+ change_font_event_handler, 2, NULL },
{ NULL, NULL,
- change_font_event_handler, (guint)&data[3], NULL },
+ change_font_event_handler, 3, NULL },
{ NULL, NULL,
- change_font_event_handler, (guint)&data[4], NULL },
+ change_font_event_handler, 4, NULL },
{ NULL, NULL,
- change_font_event_handler, (guint)&data[5], NULL },
+ change_font_event_handler, 5, NULL },
{ NULL, NULL,
- change_font_event_handler, (guint)&data[6], NULL },
+ change_font_event_handler, 6, NULL },
{ NULL, NULL,
- change_font_event_handler, (guint)&data[7], NULL },
+ change_font_event_handler, 7, NULL },
#ifdef USE_GRAPHICS
--- End Message ---