Re: [PATCH] [DISCUSS] Make the variable NULL after freeing it.

From: Ingo Oeser
Date: Mon Jan 01 2007 - 16:41:32 EST


On Monday, 1. January 2007 17:25, Andreas Schwab wrote:
> Ingo Oeser <ioe-lkml@xxxxxxxxxx> writes:
> > Then this works, because the side effect (+20) is evaluated only once.
>
> It's not a side effect, it's a non-lvalue, and you can't take the address
> of a non-lvalue.

Just verified this. So If we cannot make it work in all cases, it will
cause more problems then it will solve.

So we are left with a function, which will
a) only be used by janitors to provide "kfree(x); x = NULL;"
with an macro KFREE(x) in all the simple cases.

b) be used by developers, who are aware of the fact that reusable
pointer values should set to NULL after kfree().

Doing a) and b) is "running into open doors", so doesn't prevent any
error, obfuscates code more and works only sometimes.

I give up here and would vote for dropping that idea then.


Regards

Ingo Oeser

Attachment: pgp00000.pgp
Description: PGP signature