From 1cb5dc04605daa45f1c6a647c17442ed7ff2fe4e Mon Sep 17 00:00:00 2001 From: nhmall Date: Tue, 4 Jan 2022 08:24:08 -0500 Subject: [PATCH] work around ubuntu 20.10 build issue NetHack was trying to suppress warn_unused_result in include/tradstdc.h, by defining warn_unused_result to an empty string. That began causing a build error in a system-supplied header file cdefs.h when using 20.10 ubuntu impish. Try skipping that in tradstdc.h for any linux, unless the NetHack build defines GCC_URWARN to force it into play. --- include/tradstdc.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/tradstdc.h b/include/tradstdc.h index 09decb4b15..8c33d55e0a 100644 --- a/include/tradstdc.h +++ b/include/tradstdc.h @@ -405,12 +405,14 @@ typedef genericptr genericptr_t; /* (void *) or (char *) */ #if __GNUC__ >= 3 #define UNUSED __attribute__((unused)) #define NORETURN __attribute__((noreturn)) +#if !defined(__linux__) || defined(GCC_URWARN) /* disable gcc's __attribute__((__warn_unused_result__)) since explicitly discarding the result by casting to (void) is not accepted as a 'use' */ #define __warn_unused_result__ /*empty*/ #define warn_unused_result /*empty*/ #endif #endif +#endif #ifndef PRINTF_F #define PRINTF_F(f, v)