Re: [PATCH] checkpatch: Warn on unnecessary void function return statements

From: Sachin Kamat
Date: Mon Jun 16 2014 - 23:16:51 EST


On Tue, Jun 17, 2014 at 7:30 AM, Joe Perches <joe@xxxxxxxxxxx> wrote:
> On Mon, 2014-06-16 at 17:44 -0700, Anish Bhatt wrote:
>> My code has multiple exit lables:
>> void function(void)
>> {
>> ...
>>
>> if (err1)
>> goto exit1;
>> ...
>> if (err2)
>> goto exit2;
>>
>> ...
>> return; /* Good return, no errors */
>> exit1:
>> printk(err1);
>> return;
>> exit2:
>> printk(err2);
>> }
>>
>> The single tabbed return was required to prevent the good return & err1
>> messages cascading down. The extra exit label with a noop looks weird,
>> but is passing checkpatch.pl --strict, so I will go with that, thanks.
>> -Anish
>>
>
> Hmm, those return uses seem reasonable
> to me.
>
> Perhaps the test should warn only on
> this specific 3 line sequence:
>
> [any line but a label]
> return;
> }
>
> Andrew? Anyone else? Opinions?

It should warn only if the return is followed by a value like
return 0; or return -EERROR_CODE; etc. and not just 'return;'


--
Regards,
Sachin.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/