Static analysis tools for finding programming problems have been around for decades. The early generation tools are nowadays considered quite primitive.
These tools have more recently been superseded by advanced tools such as CodeSonar.
But how are they different? This paper compares the quality of results, the kinds of defects that primitive tools can't find, the user interfaces, and several other key differences.