Commercially Supported C and C++ Toolchain for Critical Software

AdaCore's GNAT Pro for C/C++ provides a versatile and dependable development environment for safety-critical applications. As fully supported commercial products from a company with decades of experience in the high-assurance software industry, GNAT Pro for C/C++ comes with guarantees, such as front-line support from the product developers themselves, that address any tool issue accurately and promptly so you can keep your project on track.

Discuss your requirements with a technical expert

Security logo

Security

GNAT Pro for C/C++ is built using AdaCore’s fully reproducible build system - the same build system that we use for building all of our products. We maintain complete control over every aspect of the build, which allows us to ensure that we’re always using known-good versions of all dependencies from start to finish.

AdaCore is an ISO 9001-compliant and NIST SP 800-171 organization targeting SLSA Build Level 3 compliance. That provides the confidence that our software remains untampered and can be traced securely back to its sources. We deliver GNAT Pro for C/C++ with full access to relevant security-related documents - including a Software Bill of Materials. This will guarantee transparency on the exact version of every dependency we used to build each part of GNAT Pro for C/C++. Besides, we’ll report any security vulnerabilities we discover promptly and transparently.

AdaCore Coordinated Disclosure Policy

Assurance

GNAT Pro Assurance for C/C++ gives you a sustained branch of the complete toolchain with support for critical updates and known-problem reports for as long as you need. Our commitment is unwavering and we’re prepared to support you for decades if needed.

We know your software needs to be maintained and updated over time in response to changing requirements. So you need to have confidence that if an issue such as a code generation problem is encountered, the issue will be addressed in the context of the current compiler version. GNAT Pro Assurance’s sustained-branch service guarantees product stability, with controlled evolution to address and correct issues.

GNAT Pro Assurance for C/C++ is supplied with the same maintenance guarantees as the rest of GNAT Pro Assurance.

Learn more about GNAT Pro Assurance

Supported Languages and Platforms

GNAT Pro for C/C++ is available for native environments (Linux, Windows) and also for a number of cross platforms including VxWorks, LynxOS-178, embedded Linux, and bare-metal.

C plus plus matrix

GNAT Pro for C/C++ supports C89 through C18 and C++98 through C++20.

Contact us to discuss your platform requirements

Expert Support

GNAT Pro for C/C++ is provided with AdaCore’s best-in-class support: when we provide support, we put you in touch with the experts - the engineers who develop and maintain the product. Our support is a critical part of our business model and something we take very seriously.

Learn more about Expert Support

With GNAT Pro for C/C++, you can count on the same support guarantee as with the rest of GNAT Pro.

Interoperability

AdaCore tools use a tried and tested code generation technology to support Ada, Rust, C, and C++. Our multi-language builder allows seamless hybrid-language project builds with a single command. In addition, we are working on automatic binding generators, allowing APIs written in these languages to be available in others and simplifying mixed language control flow.

Integral to every one of our products are the consulting and support services we provide to our customers. High-quality support is central to our business model, and questions on any aspect of our products are answered promptly and accurately, by the product developers themselves.

With its full spectrum of program development and verification tools, coupled with expert support, AdaCore provides a “one-stop shop” for your programming needs.

Arrow icon

A Path to Safety Certification

AdaCore products are designed to address the requirements of the most demanding safety-critical industries. GNAT Pro for C/C++ supports safety-certification needs such as avionics (DO-178), rail (EN-50128), space (ECSS-E-ST-40C and ECSS-Q-ST-80C), and others with certification of language libraries, source-to-object traceability studies and compiler qualifications.

Toolchain Validation

AdaCore has been building compilers based on the Free Software Foundation’s (FSF’s) GNU Compiler Collection (GCC) for over 25 years. We have implemented and continue to maintain an Ada compiler front end and companion run-time libraries and tools, which form the basis for our major commercial product, GNAT Pro. Leveraging the GCC back end has enabled AdaCore to port GCC to a wide range of platforms, both native and embedded, for a variety of target architectures. AdaCore personnel are back end GCC contributors and Ada front end official maintainers.


GNAT Pro for C/C++ is validated daily using different test suites, including the GCC test suite (between 10000 and 30000 test cases depending on the target), the binutils test suite, the SuperTest™ test suite, and the internal AdaCore test suite.

Code Coverage

GNATcoverage is a code coverage analysis tool that offers support for Ada, C, and C++. GNATcoverage provides sound code coverage analysis and evidence that satisfies certification requirements for avionics, rail, space, and other safety-critical industries.

GNATcoverage produces source coverage information for all levels of safety certification, including Statement Coverage, Decision Coverage, and Modified Condition/Decision Coverage.

Learn more about GNAT Coverage

Why use a commercially supported C/C++ toolchain?

For a business case presenting the advantages of our commercially supported C and C++ toolsets, download this white paper.

Contact Us About C/C++