unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: Jorge P. de Morais Neto <jorge+list@disroot.org>
To: David Bremner <david@tethera.net>, notmuch@notmuchmail.org
Subject: Re: [PATCH 1/7] cli: replace use of !! with macro
Date: Wed, 12 Jun 2019 17:17:57 -0300	[thread overview]
Message-ID: <87r27yh822.fsf@disroot.org> (raw)
In-Reply-To: <20190612113506.2892-2-david@tethera.net>

Hi.  Isn't it good practice to parenthesize the arguments of C macros?
So TO_BOOL would be defined as

#define TO_BOOL(thing) (!! (thing))

In fact, why not just cast to bool?

Regards

David Bremner <david@tethera.net> writes:

> 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

-- 
- I am Brazilian.  I hope my English is correct and I welcome feedback
- Please adopt free formats like PDF, ODF, Org, LaTeX, Opus, WebM and 7z
- Free/libre software for Android: https://f-droid.org/
- [[https://www.gnu.org/philosophy/free-sw.html][What is free software?]]

  parent reply	other threads:[~2019-06-12 20:18 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-12 11:34 Trial run uncrustifying some of the CLI David Bremner
2019-06-12 11:35 ` [PATCH 1/7] cli: replace use of !! with macro David Bremner
2019-06-12 20:13   ` Tomi Ollila
2019-06-12 20:17   ` Jorge P. de Morais Neto [this message]
2019-06-12 11:35 ` [PATCH 2/7] devel: remove between ++ / -- and argument David Bremner
2019-06-12 11:35 ` [PATCH 3/7] cli: uncrustify command-line-arguments.c David Bremner
2019-06-12 11:35 ` [PATCH 4/7] cli: uncrustify debugger.c David Bremner
2019-06-12 11:35 ` [PATCH 5/7] cli: uncrustify gmime-filter-reply.c David Bremner
2019-06-12 11:35 ` [PATCH 6/7] cli: uncrustify hooks.c David Bremner
2019-06-12 11:35 ` [PATCH 7/7] cli: uncrustify mime-node.c David Bremner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://notmuchmail.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r27yh822.fsf@disroot.org \
    --to=jorge+list@disroot.org \
    --cc=david@tethera.net \
    --cc=notmuch@notmuchmail.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).