flow: handle logic things like: foo(a && a->bar);
commitaa448813607a881d206e00979cba0e81a000a89c
authorDan Carpenter <error27@gmail.com>
Sat, 22 May 2010 20:13:48 +0000 (22 22:13 +0200)
committerDan Carpenter <error27@gmail.com>
Sat, 22 May 2010 20:13:48 +0000 (22 22:13 +0200)
treebcb11c7f79095c7ff83030d7eb44d1af52eadb13
parent5ee5de6248ceb090a96128641a7add28e599217b
flow: handle logic things like: foo(a && a->bar);

Smatch already handled select statements like:

        foo(a ? a->bar : 0);

but it didn't handle logicals or comparisons until now.  To bad news is
that handling these things causes some false positives in the broadcom
driver because they use functions instead of macros to do asserts.
Fixing that is quite a bit of work.  The good news is that this change
fixes some things when using smatch to test Wine.

Signed-off-by: Dan Carpenter <error27@gmail.com>
smatch.h
smatch_conditions.c
smatch_flow.c