linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Julia Lawall <julia.lawall@inria.fr>
To: Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>
Cc: outreachy@lists.linux.dev, lars@metafoo.de,
	Michael.Hennerich@analog.com, jic23@kernel.org,
	gregkh@linuxfoundation.org, linux-iio@vger.kernel.org,
	linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] staging: iio: meter: enclose Macros with complex values in parentheses
Date: Sun, 12 Mar 2023 15:12:47 +0100 (CET)	[thread overview]
Message-ID: <alpine.DEB.2.22.394.2303121507450.2865@hadrien> (raw)
In-Reply-To: <20230312133347.120944-1-eng.mennamahmoud.mm@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2186 bytes --]



On Sun, 12 Mar 2023, Menna Mahmoud wrote:

> enclose Macros with complex values in parentheses is especially useful
> in making macro definitions “safe” (so that they
> evaluate each operand exactly once).

enclose -> Enclose, and Macros -> macros

I don't understand the above comment though.  How does adding parentheses
around the body of a macro cause the operands to be evaluated only once?
And the macros that you have changed don't have any operands.

The value of adding parentheses is normally to ensure that the body of the
macro doesn't interact with the context in a weird way.  For example, you
could have

#define ADD 3 + 4

Then if you use your macro as 6 * ADD, you will end up evaluating
6 * 3 + 4, ie 18 + 4, when you might have expected 6 * 7.  The issue is
that * has higher precedence than +.

But I don't think that such a problem can arise with a cast expression, so
parentheses around it should not be necessary.

> this error reported by chechpatch.pl

this error is reported by checkpatch.

>
> "ERROR: Macros with complex values should be enclosed in parentheses"
>
> for ADE7854_SPI_SLOW, ADE7854_SPI_BURST and ADE7854_SPI_FAST
> macros and this error fixed by enclose these macros in parentheses.

The last two lines aren't needed.  One can easily see that from looking at
the patch.

julia

> Signed-off-by: Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>
> ---
>  drivers/staging/iio/meter/ade7854.h | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/iio/meter/ade7854.h b/drivers/staging/iio/meter/ade7854.h
> index 7a49f8f1016f..41eeedef569b 100644
> --- a/drivers/staging/iio/meter/ade7854.h
> +++ b/drivers/staging/iio/meter/ade7854.h
> @@ -139,9 +139,9 @@
>  #define ADE7854_MAX_RX    7
>  #define ADE7854_STARTUP_DELAY 1000
>
> -#define ADE7854_SPI_SLOW	(u32)(300 * 1000)
> -#define ADE7854_SPI_BURST	(u32)(1000 * 1000)
> -#define ADE7854_SPI_FAST	(u32)(2000 * 1000)
> +#define ADE7854_SPI_SLOW	((u32)(300 * 1000))
> +#define ADE7854_SPI_BURST	((u32)(1000 * 1000))
> +#define ADE7854_SPI_FAST	((u32)(2000 * 1000))
>
>  /**
>   * struct ade7854_state - device instance specific data
> --
> 2.34.1
>
>
>

  reply	other threads:[~2023-03-12 14:12 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-12 13:33 [PATCH] staging: iio: meter: enclose Macros with complex values in parentheses Menna Mahmoud
2023-03-12 14:12 ` Julia Lawall [this message]
2023-03-12 14:23   ` Menna Mahmoud
2023-03-12 14:25     ` Julia Lawall
2023-03-15  0:25       ` Alison Schofield
2023-03-15  4:19         ` Dan Carpenter

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

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

  git send-email \
    --in-reply-to=alpine.DEB.2.22.394.2303121507450.2865@hadrien \
    --to=julia.lawall@inria.fr \
    --cc=Michael.Hennerich@analog.com \
    --cc=eng.mennamahmoud.mm@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jic23@kernel.org \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=outreachy@lists.linux.dev \
    /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.
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 NNTP newsgroup(s).