Using v1.79, I found a false positive. It is triggered by something like this small .c test.c int GetVal (void) { return 0x123548; } int * GetPtr (int *pPtr) { return pPtr; } int main (void) { int x, *pPtr; x = GetVal (); if (pPtr = GetPtr (&x), pPtr == NULL) x = 0x01; else { x = *pPtr; } return x; } Best Regards Stefano