[linux-next:master] BUILD REGRESSION 736ee37e2e8eed7fe48d0a37ee5a709514d478b3
Luc Van Oostenryck
luc.vanoostenryck at gmail.com
Sun May 22 04:57:00 PDT 2022
On Fri, May 20, 2022 at 02:46:20PM +0200, Geert Uytterhoeven wrote:
> > The "(void)" makes sure there is no return value.
> > Which matters if the result of a function returning void is propagated
> > to another function returning void.
>
> Which, FTR, sparse also doesn't like:
>
> error: return expression in void function
You should get this message only if the expression is itself not void.
For example:
$ cat test.c
extern void fun(void);
static void ko(int *ptr)
{
return *ptr;
}
static void ok1(int *ptr)
{
return (void) *ptr;
}
static void ok2(int *ptr)
{
return fun();
}
$ sparse test.c
test.c:5:16: error: return expression in void function
IOW, sparse warn only for the ko() but not for ok1() or ok2().
If you have a case whee it s not the case, please send me the
pre-processed file and I'll be glad to investigate.
Best regards,
-- Luc
More information about the Linux-nvme
mailing list