: This paper evaluates the ability of a variety of commercial and non-commercial software products to detect serial run-time errors in C and C++ programs, to issue meaningful messages, and to give the line in the source code where the error occurred. The commercial products, Insure++ and Purify, evaluated did the best of all the software products we evaluated. Error messages were usually better and clearer when using Insure++ than when using Purify. Our evaluation shows that the overall capability of detecting run-time errors of the non-commercial products is significantly lower than the quality of both Purify and Insure++. Of all the noncommercial products evaluated, Mpatrol provided the best overall capability to detect run-time errors in C and C++ programs.
Glenn R. Luecke, James Coyle, Jim Hoekstra, Marina