deref_check: silence some false positives
The issue here was we had code like:
int some_function(int *p, ...)
{
if (p)
*p = 42;
The problem is that all the callers pass a NULL "p" pointer so instead of
saying that "p" is some non-NULL pointer, smatch instead says that it
doesn't know what "p" is, it could be anything.
So then when we check the "if (implied_not_equal(expr, 0))" setting then
it doesn't return true. Leading to false positives later.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>