We don't just tell you where the bugs are, we show you how to understand and fix them. Bug Hunter traces the paths through your code that lead to a defect, and replays them a step at a time.
Runs in the background automatically · An ever-growing catalogue of checks · Harden your code with every commit
Bug Hunter looks for bugs that are not easy to see with the naked eye — the ones that only appear when a particular route through the code is taken.
Memory is released, and a pointer to it is used afterwards.
A divisor that can reach zero on some path through the function.
An allocation that no path frees before the last reference to it is lost.
A pointer that can be null exactly where the code dereferences it.
The address of a local variable outlives the function that declared it.
A call that resolves to no definition anywhere in the parsed project.
A variable read on a path where nothing has written to it yet.
A virtual function reached while the object it dispatches on is not yet whole.
A line number and a rule name tell you a bug exists. They do not tell you why. Bug Hunter will walk you through the code step by step, and explain how the bug was introduced — so the engineer who picks up the violation does not need to have written the code to fix it.
Four stages, from picking the checks to watching the violation disappear.
Add your source code to Understand and select which checks you would like to run in the background. Bug Hunter looks for bugs that are not easy to see with the naked eye. Our patented code parsing technology will search every function and dependency for potential issues, saving your engineers valuable time.
After choosing the bug checks to run on your project, Bug Hunter will get to work in the background. These checks can also be run manually at any time by accessing our CodeCheck feature. CodeCheck also comes bundled with over 3,000 code requirements to choose from. You can even add CodeCheck and Bug Hunter to your CI/CD pipeline to ensure your main branch stays clean with every commit.
Issues detected by Bug Hunter appear in the Violation Browser and in the sidebar when you browse your code. Issues are saved until the bug is fixed or the ignore option is selected, even between sessions. Issues can be searched and filtered; once selected, you are taken straight to that location in your code.
After choosing a violation to explore, you will see a list of steps on the right that explains the exact steps required to replicate the bug. Within the code editor you will see an explanation under each line of code that explains how the bug progresses. At this point you can either click ignore to dismiss the bug, or modify the code and re-run Bug Hunter to ensure you've squashed that bug for good.
Download a free trial and test out all of Understand's features using a sample code base, or request a demo to address your project's needs.
Included with Understand · Runs in the background or from CI · Windows, macOS and Linux