diff options
Diffstat (limited to 'src/include/k5-platform.h')
-rw-r--r-- | src/include/k5-platform.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/include/k5-platform.h b/src/include/k5-platform.h index 994f463..62d1e2a 100644 --- a/src/include/k5-platform.h +++ b/src/include/k5-platform.h @@ -71,6 +71,13 @@ #define CAN_COPY_VA_LIST #endif +/* This attribute prevents unused function warnings in gcc and clang. */ +#ifdef __GNUC__ +#define UNUSED __attribute__((__unused__)) +#else +#define UNUSED +#endif + #if defined(macintosh) || (defined(__MACH__) && defined(__APPLE__)) #include <TargetConditionals.h> #endif @@ -357,14 +364,11 @@ typedef struct { int error; unsigned char did_run; } k5_init_t; #if !defined(SHARED) && !defined(_WIN32) /* - * In this case, we just don't care about finalization. - * - * The code will still define the function, but we won't do anything - * with it. Annoying: This may generate unused-function warnings. + * In this case, we just don't care about finalization. The code will still + * define the function, but we won't do anything with it. */ - # define MAKE_FINI_FUNCTION(NAME) \ - static void NAME(void) + static void NAME(void) UNUSED #elif defined(USE_LINKER_FINI_OPTION) || defined(_WIN32) /* If we're told the linker option will be used, it doesn't really |