diff --git a/include/tradstdc.h b/include/tradstdc.h index d77348f85..3681861aa 100644 --- a/include/tradstdc.h +++ b/include/tradstdc.h @@ -401,6 +401,9 @@ typedef genericptr genericptr_t; /* (void *) or (char *) */ #if (__GNUC__ >= 2) && !defined(USE_OLDARGS) #define PRINTF_F(f, v) __attribute__((format(printf, f, v))) #endif +#if (__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1) +#define PRINTF_F_PTR(f, v) PRINTF_F(f, v) +#endif #if __GNUC__ >= 3 #define UNUSED __attribute__((unused)) #define NORETURN __attribute__((noreturn)) @@ -419,6 +422,9 @@ typedef genericptr genericptr_t; /* (void *) or (char *) */ #ifndef PRINTF_F #define PRINTF_F(f, v) #endif +#ifndef PRINTF_F_PTR +#define PRINTF_F_PTR(f, v) +#endif #ifndef UNUSED #define UNUSED #endif diff --git a/src/mkobj.c b/src/mkobj.c index 53f5cf64f..01a8a3419 100644 --- a/src/mkobj.c +++ b/src/mkobj.c @@ -2107,7 +2107,7 @@ place_object(struct obj *otmp, coordxy x, coordxy y) register struct obj *otmp2; if (!isok(x, y)) { /* validate location */ - void (*func)(const char *, ...) PRINTF_F(1, 2); + void (*func)(const char *, ...) PRINTF_F_PTR(1, 2); func = (x < 0 || y < 0 || x > COLNO - 1 || y > ROWNO - 1) ? panic : impossible; diff --git a/src/vault.c b/src/vault.c index f86a4b5e2..18db9adc0 100644 --- a/src/vault.c +++ b/src/vault.c @@ -413,7 +413,7 @@ invault(void) otherwise the hero wouldn't be able to push one to follow the guard out of the vault because that guard would be in its way */ if ((otmp = sobj_at(BOULDER, guard->mx, guard->my)) != 0) { - void (*func)(const char *, ...) PRINTF_F(1, 2); + void (*func)(const char *, ...) PRINTF_F_PTR(1, 2); const char *bname = simpleonames(otmp); int bcnt = 0; diff --git a/win/X11/NetHack.ad b/win/X11/NetHack.ad index 755fa58a7..519c8e2c8 100644 --- a/win/X11/NetHack.ad +++ b/win/X11/NetHack.ad @@ -321,7 +321,7 @@ NetHack*map*orange: orange NetHack*map*bright_green: green NetHack*map*yellow: yellow NetHack*map*bright_blue: Royal blue -NetHack*map*bright_magenta: Fuchsia +NetHack*map*bright_magenta: magenta NetHack*map*bright_cyan: cyan NetHack*map*white: white ! diff --git a/win/X11/winmenu.c b/win/X11/winmenu.c index 4680229e4..ba272cd8b 100644 --- a/win/X11/winmenu.c +++ b/win/X11/winmenu.c @@ -12,6 +12,7 @@ #define PRESERVE_NO_SYSV /* X11 include files may define SYSV */ #endif +#include #include #include #include