Re: [PATCH] power: supply: core: fix clang -Wunsequenced

From: Nick Desaulniers
Date: Thu May 02 2019 - 14:01:09 EST


On Wed, May 1, 2019 at 6:28 PM Phong Tran <tranmanphong@xxxxxxxxx> wrote:
>
> The increment operator of pointer in be32_to_cpu() is not explicitly.
> It made the warning from clang:
>
> drivers/power/supply/power_supply_core.c:674:36: error: multiple
> unsequenced modifications to 'list' [-Werror,-Wunsequenced]
> drivers/power/supply/power_supply_core.c:675:41: error: multiple
> unsequenced modifications to 'list' [-Werror,-Wunsequenced]
>
> Link: https://github.com/ClangBuiltLinux/linux/issues/460
>
> Signed-off-by: Phong Tran <tranmanphong@xxxxxxxxx>
> ---
> drivers/power/supply/power_supply_core.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/power/supply/power_supply_core.c b/drivers/power/supply/power_supply_core.c
> index c917a8b43b2b..7cc6f5fac0d0 100644
> --- a/drivers/power/supply/power_supply_core.c
> +++ b/drivers/power/supply/power_supply_core.c
> @@ -665,8 +665,10 @@ int power_supply_get_battery_info(struct power_supply *psy,
> }
>
> for (i = 0; i < tab_len; i++) {
> - table[i].ocv = be32_to_cpu(*list++);
> - table[i].capacity = be32_to_cpu(*list++);
> + table[i].ocv = be32_to_cpu(*list);
> + list++;
> + table[i].capacity = be32_to_cpu(*list);
> + list++;

I prefer preincrement/predecrement to postincrement/postdecrement
unless absolutely necessary, but it really doesn't matter in this
case. Thanks for the patch.
Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

--
Thanks,
~Nick Desaulniers