Upgraded tool assess bugs before program execution
Assessing potential bugs before program execution, CodePeer 2.3 is the latest version of AdaCore's static analysis tool for the automated review and validation of Ada source code. The tool is able to find errors efficiently and early in the development life cycle.
In addition to performing impact and vulnerability analysis when existing code is modified, the tool also uses control-flow, data-flow, and other advanced static analysis techniques to detect problems. These detected problems would otherwise only be found through labour-intensive debugging. The update to CodePeer has allowed more precise diagnostic messages and fewer “false positives”, as well as including an independent Ada front end. To simplify the development process, CodePeer 2.3 provides better integration with AdaCore’s two IDEs: GNAT Programming Studio (GPS) and GNATbench (the GNAT Pro Ada plug-in for Eclipse and Wind River Systems Workbench).
The upgraded tool also offers support for floating point overflow on unconstrained types, as well as having the ability to supply target configuration files. Further to this, the tool offers improved support for existing codebases in Ada 83, and improved message review capabilities are now available through pragma Annotate. The tool also provides new warnings when a formal parameter could be declared with a more restrictive mode. CodePeer is fully integrated into the GNAT Pro development environment and comes with a number of complementary static analysis tools common to the technology – a coding standard verification tool (GNATcheck), a source code metric generator (GNATmetric), a semantic analyzer, and a document generator.
“It has been exciting to bring the 2.3 release to our customers, with CodePeer now established as the most advanced and precise static analysis tool available for Ada,” commented Tucker Taft, AdaCore Vice President and Director of Language Research. “It was especially gratifying to integrate CodePeer with Ada 2012’s contract-based programming capabilities; this has really advanced the state of the art in software verification.”