type_val: small tweak for arrays and complicated lvalues
commit4b4f9a3f07ef8d4451a8011112a7b6001546cce0
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 11 Apr 2017 12:45:09 +0000 (11 15:45 +0300)
committerDan Carpenter <dan.carpenter@oracle.com>
Tue, 11 Apr 2017 12:45:09 +0000 (11 15:45 +0300)
tree614ef5eaa163aab93bbd637c3f33aaef78c829c5
parente6e8c0a10c2efee7250278f4073259ed89acbbb3
type_val: small tweak for arrays and complicated lvalues

What's happening here is that originally I just took the value of the
right hand side of the assignment.  But that doesn't work if we're doing
|= or something similar.  And since those are already handled by
smatch_extra, I figured I could just look up the left hand side after
smatch_extra had done its magic.  But then I noticed missing information
because smatch extra doesn't store anything for assignments like:

a->foo[bar] = 42;

Where the array assignment is a bit complicated.

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