[PATCH 4/6] Fix the COERCE_STATUS macro
Justus Winter
4winter at informatik.uni-hamburg.de
Mon Sep 24 08:21:18 PDT 2012
Fix the COERCE_STATUS macro to handle _internal_error being declared
as void function.
Note that the function _internal_error does not return. Evaluating to
NOTMUCH_STATUS_SUCCESS is done purely to appease the compiler.
Signed-off-by: Justus Winter <4winter at informatik.uni-hamburg.de>
---
lib/notmuch-private.h | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/lib/notmuch-private.h b/lib/notmuch-private.h
index bfb4111..7a409f5 100644
--- a/lib/notmuch-private.h
+++ b/lib/notmuch-private.h
@@ -136,13 +136,17 @@ typedef enum _notmuch_private_status {
* to or greater than NOTMUCH_STATUS_LAST_STATUS. (The idea here is
* that the caller has previously handled any expected
* notmuch_private_status_t values.)
+ *
+ * Note that the function _internal_error does not return. Evaluating
+ * to NOTMUCH_STATUS_SUCCESS is done purely to appease the compiler.
*/
#define COERCE_STATUS(private_status, format, ...) \
((private_status >= (notmuch_private_status_t) NOTMUCH_STATUS_LAST_STATUS)\
? \
- (notmuch_status_t) _internal_error (format " (%s).\n", \
- ##__VA_ARGS__, \
- __location__) \
+ _internal_error (format " (%s).\n", \
+ ##__VA_ARGS__, \
+ __location__), \
+ (notmuch_status_t) NOTMUCH_PRIVATE_STATUS_SUCCESS \
: \
(notmuch_status_t) private_status)
--
1.7.10.4
More information about the notmuch
mailing list