AdaCore: Build Software that Matters
GNAT SAS updated
Products > Static Analysis_

GNAT Static Analysis Suite

Automated Ada Inspection, Secure from the Start.

GNAT Static Analysis Suite delivers advanced, whole-program analysis for Ada software. Designed for enterprise, embedded, safety-critical, and high-assurance development, it performs deep semantic checks to uncover bugs, vulnerabilities, and coding standard violations before they reach production.

Contact Us
Why GNAT Static Analysis Suite?_

GNAT Static Analysis Suite Solves

Ada Support

Developers using the Ada programming language need an environment that supports all versions of the language, with abilities to verify code from coding standard adherence to security weaknesses.

Late Error Detection

Flaws can be buried deep in complex systems; these defects cost exponentially more to fix the later they are found, but testing and manual code review techniques are not sufficient to ensure minimal rate of errors.

Legacy Code Upkeep

Working with large, legacy codebases or integrating third-party software can introduce unknown risk. Making sure that this software can be maintained in production or integrated requires dedicated analysis.

Compliance

Whether it is about adhering to a safety certifications requirements such as DO-178C or ISO 26262, meeting customer demands or adhering to internal quality standards, compliance is a key but expensive step in completing software deliveries.

Features_

GNAT SAS Enables

GNAT Static Analysis Suite combines deep static analysis, coding standards checking, compiler warnings, and software metrics. The result takes your Ada to the next level.

Ada Software Development

GNAT SAS supports all versions of Ada, from Ada 83, 95, 2005, 2012 and 2022, together with a number of compiler-specific extensions. It can also be used alongside SPARK to analyze unproven code.

Advanced Error Detection

Using abstract interpretation and symbolic execution, GNAT SAS explores all feasible execution paths through a program to detect defects across procedure boundaries and modules. Analyses include control flow, data flow, taint, and memory modelling, uncovering subtle and serious errors before you test.

Coding Standard Checking

GNAT Static Analysis Suite features an automated coding standard verification tool that checks Ada code for compliance with organizational and project-specific coding standards. Start with our built-in rules, then write your own rules using our powerful rule-editing language.

Metrics

GNAT Static Analysis Suite provides qualifiable software metrics for Ada code. Built-in metrics cover common use cases, including line, complexity and coupling metrics. Using the same rule-editing technology as for checks, you can compute and report any metrics you need.

Speak to an Expert

Discover the advantages that GNAT Static Analysis Suite can bring to your high-integrity systems.

Binary code
Capabilities_

GNAT Static Analysis Suite Brings

Security

CWEs

GNAT SAS detects many CWEs, including several that are in the top 25 list of most dangerous software errors.

Memory Safety

Ada detects a number of memory safety issues dynamically - so you're always kept safe with runtime checks. GNAT SAS goes a step further and finds memory-related problems statically, increasing the availability of your security-critical code.

Taint Analysis

GNAT SAS includes an integrated taint analysis engine to trace untrusted data through software systems. This capability is key to identifying injection vulnerabilities, unsafe data propagation, and other serious security flaws that cannot be easily detected by simpler tools.

Quality

Runtime Errors

GNAT SAS can detect many potential runtime errors statically, including buffer overflow, numeric overflow, null pointer dereference, and division by zero.

Code Smells

GNAT SAS detects a wide range of issues, including: uninitialized variables; unreachable, redundant or useless code; data races; and failures of user-defined checks.

Warnings

GNAT Static Analysis Suite works with Ada projects built using 3rd-party toolchains. But GNAT Static Analysis Suite includes the GNAT compiler's warnings, so you can benefit from powerful and insightful warnings, without changing your toolchain.

Conformance

Built-in Coding Standards Checks

GNAT SAS provides a rich library of predefined coding rules, including style rules and feature-restriction rules. Moreover, GNAT SAS's coding-standards checks have been qualified for use in safety-critical development programs.

Custom Rules

GNAT SAS comes with a query language (called LKQL) so you can write your own checks for any in-house rules you may have developed, allowing you to meet your organization’s specific needs, processes and procedures.

Software Metrics

GNAT SAS checks conformance to a large set of metrics, including line, syntax, complexity, coupling and contract metrics. And with LKQL, you can add new metrics via custom rules.

Binary code
Related Products & Services_

Get More from GNAT Static Analysis Suite

Code
Saab Technologies logo

In our kind of development, it is very important to avoid bugs, or to find and repair them at an early stage, since those that remain in a deployed system are both expensive to fix and can cause a disastrous result. For this reason, a static analysis tool is a great help.

Saab Anders Råberg, Software Systems Engineer

Ready to Strengthen Your Code?

Discover how GNAT Static Analysis Suite can help you detect defects earlier, streamline compliance, and secure your critical systems.

Explore More_

Latest News and Resources