The slightly annoying reason to do this is because uncrustify can't
handle '!! foo' sensibly. The less annoying reason is that it helps
understand what the code does.
---
 command-line-arguments.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/command-line-arguments.c b/command-line-arguments.c
index d64aa85b..5f0607be 100644
--- a/command-line-arguments.c
+++ b/command-line-arguments.c
@@ -4,6 +4,8 @@
 #include "error_util.h"
 #include "command-line-arguments.h"
 
+#define TO_BOOL(thing) (!! thing)
+
 typedef enum {
     OPT_FAILED, /* false */
     OPT_OK, /* good */
@@ -120,13 +122,13 @@ _process_string_arg (const notmuch_opt_desc_t *arg_desc, 
char next, const char *
 static int _opt_set_count (const notmuch_opt_desc_t *opt_desc)
 {
     return
-       !!opt_desc->opt_inherit +
-       !!opt_desc->opt_bool +
-       !!opt_desc->opt_int +
-       !!opt_desc->opt_keyword +
-       !!opt_desc->opt_flags +
-       !!opt_desc->opt_string +
-       !!opt_desc->opt_position;
+       TO_BOOL (opt_desc->opt_inherit) +
+       TO_BOOL (opt_desc->opt_bool) +
+       TO_BOOL (opt_desc->opt_int) +
+       TO_BOOL (opt_desc->opt_keyword) +
+       TO_BOOL (opt_desc->opt_flags) +
+       TO_BOOL (opt_desc->opt_string) +
+       TO_BOOL (opt_desc->opt_position);
 }
 
 /* Return true if opt_desc is valid. */
-- 
2.20.1

_______________________________________________
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch

Reply via email to