Re: [PATCH 4/9v2] usb: host: ehci.h: fix single statement macros

Sergei Shtylyov
2015-12-10T14:44:10Z

On 12/10/2015 04:05 PM, Geyslan G. Bem wrote:

>>>> Don't use the 'do {} while (0)' wrapper in a single statement macro.
>>>>
>>>> Caught by checkpatch: "WARNING: Single statement macros should not
>>>> use a do {} while (0) loop"
>>>>
>>>> Signed-off-by: Geyslan G. Bem <geyslan@gmail.com>
>>>> ---
>>>> drivers/usb/host/ehci.h | 4 ++--
>>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h
>>>> index cfeebd8..945000a 100644
>>>> --- a/drivers/usb/host/ehci.h
>>>> +++ b/drivers/usb/host/ehci.h
>>>> @@ -244,9 +244,9 @@ struct ehci_hcd { /* one per
>>>> controller */
>>>> /* irq statistics */
>>>> #ifdef EHCI_STATS
>>>> struct ehci_stats stats;
>>>> -# define COUNT(x) do { (x)++; } while (0)
>>>> +# define COUNT(x) ((x)++)
>>>> #else
>>>> -# define COUNT(x) do {} while (0)
>>>> +# define COUNT(x) ((void) 0)
>>>
>>>
>>> Why not just empty #define?
>>
>> Indeed. I'll change it.
>> Tks Sergei.
>
> Since COUNT is not used to return the empty #define is ok. Another way
> is to use #define COUNT(x) (0) to get a 0 when necessary to read
> returns.

Just 0, no parens please.

MBR, Sergei