GNATcheck - Coding Standard Verification Tool
GNATcheck is an extensible rule-based tool with an easy-to-use interface. It allows developers to completely define a coding standard (referred to as a "Software Code Standard" in DO-178B) as a set of rules, for example a subset of permitted language features. It verifies a program’s conformance with the resulting rules and thereby facilitates demonstration of a system’s compliance with DO-178B.
GNATcheck meets the growing need for automated verification in safety-critical avionics systems, particularly those systems that need to satisfy the DO-178B standard. Developed by RTCA and EUROCAE, DO-178B defines the guidelines for development of aviation software in both the US and Europe and is being increasingly adopted by other related sectors, such as air traffic control and military applications.
With software innovation powering today’s successful aircraft, automatic coding standard verification is becoming more and more important. The highly structured nature of the Ada language makes it a natural choice for avionics development, with the addition of specialized tools like GNATcheck, GNAT Pro offers the most complete and integrated solution for coding standard verification compliant with DO-178B requirements.
Qualification material is available for GNATcheck for certain coding standards and additional materials can be created based on customer demand. For more information contact: firstname.lastname@example.org
- An integrated Ada Restrictions mechanism for banning specific features from an application. This can be used to restrict features, such as tasking, exceptions, dynamic allocation, fixed or floating point, input/output and unchecked conversions
- GNAT Pro specific Restrictions, which complement Ada’s set of restrictions, such as those banning the generation of implicit loops or conditionals in the object code, or the banning of the generation of elaboration code.
- Additional rules based on Ada semantics specification developed following extensive customer input, including detailed issues, such as ordering of parameters, normalized naming of entities and subprograms with multiple returns
- Easy-to-use interface for creating and using a complete coding standard
- Generation of project-wide reports, including evidence of the level of compliance to a given coding standard
- Over 30 compile time warnings from GNAT Pro that detect typical error situations, such as local variables being used before being initialized, incorrect assumptions about array lower bounds, infinite recursion, incorrect data alignment, and accidental hiding of names
- Style checks that allow developers to control indentation, casing, comment style, and nesting level