I know that BugFinder analysis is not supposed to be as exhaustive as CodeProver, but somehow even the most simplistic form of non terminating loops are not marked in the results. Is this expected behavior?
In a file I analyzed using a few tools,
while(g_tj.rounds);
can be not terminating because g_tj is not marked volatile, so the compiler would be allowed to cache the access. This is of course marked as a red check in CodeProver, but even free ccpcheck marks it as suspicious.
As you can see in the image from the BugFinder result, the tooltip seems to be speculating about non termination, but the line is not marked (for that) in the result output, even though all BugFinder checks are enabled.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/502628/image.jpeg)
What am I missing?
Best Answer