Re: sparse: __pure declaration only

From: Linus Torvalds
Date: Fri Oct 18 2019 - 11:33:41 EST


On Fri, Oct 18, 2019 at 4:15 AM Ben Dooks <ben.dooks@xxxxxxxxxxxxxxx> wrote:
>
> is this a valid warning? if not, should sparse be ignoring these.

It's technically valid, but maybe it's not useful.

If we make sure that any pure bits from a declaration always make it
into the definition, then I suspect that the "was not declared"
warning (if the definition is non-static and seen without a
declaration) is sufficient.

Of course, sparse doesn't actually _care_ about "pure" in the
definition, only in the use, so right now it doesn't even make any
difference to sparse whether the definition has the "pure" or not.
It's only when the function is used that the "pure" matters (it makes
the call instruction be CSE'd like any other random instruction).

Linus