diff options
author | Marc-André Lureau <marcandre.lureau@gmail.com> | 2012-03-20 02:28:20 +0100 |
---|---|---|
committer | Marc-André Lureau <marcandre.lureau@gmail.com> | 2012-03-20 15:30:24 +0100 |
commit | f7af6264eac996f0119acc92d809a43601d8fe40 (patch) | |
tree | e314298f9ee294a841bad296d6f5ec246751cbdc | |
parent | a1df67b3c576b6791a836ae58fde76bdf2ab58f7 (diff) |
Add SPICE_ATTR_NORETURN and use it for a few functions
-rw-r--r-- | common/canvas_base.c | 4 | ||||
-rw-r--r-- | common/macros.h | 7 |
2 files changed, 10 insertions, 1 deletions
diff --git a/common/canvas_base.c b/common/canvas_base.c index a34cace..8f5b0c8 100644 --- a/common/canvas_base.c +++ b/common/canvas_base.c @@ -37,7 +37,7 @@ #include "lines.h" #include "rop3.h" #include "mem.h" - +#include "macros.h" #include "mutex.h" #define ROUND(_x) ((int)floor((_x) + 0.5)) @@ -1737,6 +1737,7 @@ static pixman_image_t *canvas_scale_surface(pixman_image_t *src, const SpiceRect return surface; } +SPICE_ATTR_NORETURN SPICE_ATTR_PRINTF(2, 3) static void quic_usr_error(QuicUsrContext *usr, const char *fmt, ...) { QuicData *usr_data = (QuicData *)usr; @@ -1779,6 +1780,7 @@ SPICE_ATTR_PRINTF(2, 3) static void lz_usr_warn(LzUsrContext *usr, const char *f va_end(ap); } +SPICE_ATTR_NORETURN SPICE_ATTR_PRINTF(2, 3) static void lz_usr_error(LzUsrContext *usr, const char *fmt, ...) { LzData *usr_data = (LzData *)usr; diff --git a/common/macros.h b/common/macros.h index ba9713b..cf7aaad 100644 --- a/common/macros.h +++ b/common/macros.h @@ -26,5 +26,12 @@ #define SPICE_ATTR_PRINTF(a,b) #endif /* __GNUC__ */ +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 5) +#define SPICE_ATTR_NORETURN \ + __attribute__((noreturn)) +#else +#define SPICE_ATTR_NORETURN +#endif /* __GNUC__ */ + #endif /* __MACROS_H */ |