diff options
author | Michihiro NAKAJIMA <ggcueroad@gmail.com> | 2009-11-09 05:56:48 -0500 |
---|---|---|
committer | Michihiro NAKAJIMA <ggcueroad@gmail.com> | 2009-11-09 05:56:48 -0500 |
commit | 992bd3b18b4f740a0150bff6d08e090bda0fab82 (patch) | |
tree | 3bb05d3ef9124020609fe9c6e57b34a7acd268f4 | |
parent | 71145f2f9b15397e537dc23d9babefc0da12e278 (diff) | |
download | libarchive-992bd3b18b4f740a0150bff6d08e090bda0fab82.tar.gz |
Teach it to compiler and analyzer that function `lafe_errc' is no return.
Found by Clang Static Analyzer.
SVN-Revision: 1626
-rw-r--r-- | libarchive_fe/err.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/libarchive_fe/err.h b/libarchive_fe/err.h index 164e2d38..dd794481 100644 --- a/libarchive_fe/err.h +++ b/libarchive_fe/err.h @@ -26,9 +26,16 @@ #ifndef LAFE_ERR_H #define LAFE_ERR_H +#if defined(__GNUC__) && (__GNUC__ > 2 || \ + (__GNUC__ == 2 && __GNUC_MINOR__ >= 5)) +#define __LA_DEAD __attribute__((__noreturn__)) +#else +#define __LA_DEAD +#endif + extern const char *lafe_progname; void lafe_warnc(int code, const char *fmt, ...); -void lafe_errc(int eval, int code, const char *fmt, ...); +void lafe_errc(int eval, int code, const char *fmt, ...) __LA_DEAD; #endif |