From: Jim Bankoski Date: Thu, 21 Aug 2014 18:43:36 +0000 (-0700) Subject: warnings.c : fixes dereference to null warning X-Git-Tag: v1.4.0~953^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e9b878ceff38c7701e132adec47eeb57aa4cf2ac;p=libvpx warnings.c : fixes dereference to null warning Change-Id: I03cceb4b92b7362e90f3ea61342341246b9a11ab --- diff --git a/tools_common.h b/tools_common.h index 558413ea4..c1f466b01 100644 --- a/tools_common.h +++ b/tools_common.h @@ -103,17 +103,25 @@ struct VpxInputContext { extern "C" { #endif +#if defined(__GNUC__) +#define VPX_NO_RETURN __attribute__((noreturn)) +#else +#define VPX_NO_RETURN +#endif + /* Sets a stdio stream into binary mode */ FILE *set_binary_mode(FILE *stream); -void die(const char *fmt, ...); -void fatal(const char *fmt, ...); +void die(const char *fmt, ...) VPX_NO_RETURN; +void fatal(const char *fmt, ...) VPX_NO_RETURN; void warn(const char *fmt, ...); -void die_codec(vpx_codec_ctx_t *ctx, const char *s); +void die_codec(vpx_codec_ctx_t *ctx, const char *s) VPX_NO_RETURN; /* The tool including this file must define usage_exit() */ -void usage_exit(); +void usage_exit() VPX_NO_RETURN; + +#undef VPX_NO_RETURN int read_yuv_frame(struct VpxInputContext *input_ctx, vpx_image_t *yuv_frame);