Re: [PATCH v2 2/2] staging: greybus: remove unneeded return

From: Fabio M. De Francesco
Date: Wed Apr 13 2022 - 02:36:05 EST


On mercoledì 13 aprile 2022 08:16:20 CEST Julia Lawall wrote:
>
> On Tue, 12 Apr 2022, Fabio M. De Francesco wrote:
>
> > On martedì 12 aprile 2022 21:59:15 CEST Jaehee Park wrote:
> > > An empty function with void return type does not need an explicit
> > > return. Issue found by checkpatch.
> > >
> > > Signed-off-by: Jaehee Park <jhpark1013@xxxxxxxxx>
> > > ---
> > > drivers/staging/greybus/audio_codec.c | 1 -
> > > 1 file changed, 1 deletion(-)
> > >
> > > diff --git a/drivers/staging/greybus/audio_codec.c b/drivers/staging/
> > greybus/audio_codec.c
> > > index 0f50d1e51e2c..3e3a16568def 100644
> > > --- a/drivers/staging/greybus/audio_codec.c
> > > +++ b/drivers/staging/greybus/audio_codec.c
> > > @@ -1032,7 +1032,6 @@ static int gbcodec_probe(struct
snd_soc_component
> > *comp)
> > > static void gbcodec_remove(struct snd_soc_component *comp)
> > > {
> > > /* Empty function for now */
> > > - return;
> > > }
> > >
> > > static int gbcodec_write(struct snd_soc_component *comp, unsigned
int
> > reg,
> > > --
> > > 2.25.1
> > >
> > Hi Jaehee,
> >
> > If I recall it correctly, Dan Carpenter suggested to remove this empty
> > function.
> >
> > When developers remove lines of code from a function which becomes
empty
> > after the removals, they also remove the resulting empty function and
> > delete all the calls (if there are any left) at the same time.
>
> It's probably not relevant in this case,

No, it's relevant :)
I should have been more exhaustive :(

> but the function could be needed
> if it is a branch of an ifdef. Also if it is stored in a structure field
> and the user of the structure does not check for NULL.

Here we have one of special cases you've mentioned. The pointer to the
function is stored in a structure field _but_ we know that the user does
check for NULL.

Thanks,

Fabio

> julia