param_key: fix where assignments are handled
commit4533a174333015f633e9d60e2664a94eb2797168
authorDan Carpenter <dan.carpenter@oracle.com>
Mon, 11 Jan 2021 12:28:55 +0000 (11 15:28 +0300)
committerDan Carpenter <dan.carpenter@oracle.com>
Mon, 11 Jan 2021 12:28:55 +0000 (11 15:28 +0300)
tree86e1a76cdc51da0e057d2441d3d42e42940ef31b
parentea1227d90792d8e3d594e36f5ae6601313f2fc3c
param_key: fix where assignments are handled

The problem is when we do:

foo = param;

Then it gets translated into:

foo = param;
foo->member = fake();

So it looks like we're setting param->member to fake().  I had thought this
was fixed by moving the register_param_key in check_list.h until the end,
and possibly that fixed part of the problem but it doesn't work 100% for
sure.  The correct fix is to use ASSIGN_HOOK_LATE.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch_param_key.c