Comprehensive Ada Toolsuite

Full Ada Compiler (Ada 2012/2005/95/83)

The GNAT Ada compiler includes an Ada front-end, the GCC code generator, the binder, linker, and run-time library. All of these components, except for the code generator, are written in Ada, and are completely target-independent. The code generator is the GCC back-end. The interface between the front-end and the GCC back-end is a tree transducer, which translates the language-specific intermediate representation produced by the Ada front-end into the language-independent tree language that GCC expects.

Features of the GNAT Pro Ada Compiler

  • GCC code generator
  • Project manager facility
  • Automatic make facility (gnatmake)
  • Ability to build standalone static and dynamic libraries
  • Interfacing to C, C++, and Java
  • Detection of uninitialized variables
  • Support for style checking
  • Fine-grained control of program elaboration
  • Choice between zero-cost and longjmp/setjmp exceptions
  • Ability to view how Ada constructs are compiled
  • Ability to view memory layout of types and objects
  • Machine code insertions
  • Extensive set of warnings to catch likely errors
  • Informative error messages
  • Flexible file naming support
  • Support for programmatic debug control

Knowledge Center


  • GNAT Pro 6.1.1

    May 06, 2008

    The latest version of the GNAT Pro Ada toolset sees over 150 enhancements to the technology including:

    • Additional GNAT Pro platforms incorporating the gcc 4.1 code generator (this code generator will now be included on most platforms)

    • Upgrade of the debugging engine, based on gdb 6.6

    • Improvement in robustness and efficiency for Ada 2005 features

    • Better real-time support on win32 platforms

    • Thread-safe profiling with gprof, on several platforms

    • Increased coverage analysis support for Ada in the gcov tool

    • New warnings to help programmers detect errors earlier

    • GNAT Pro companion tools such as gnatcheck, gnatpp and gnatmetric are being enhanced to support a wider variety of coding styles and coding standards.

    The next webinar in the GNAT Pro InSight series will describe and demo some of the new features introduced in 6.1.1. As always, we will allow a question and answer session at the end enabling you to talk directly with the designers of GNAT Pro.

Developer Gems    

  • Gem #148 : Su(per)btypes in Ada 2012 - Part 3

    In the previous two Gems of this series, we saw how the aspects Static_Predicate and Dynamic_Predicate can be used to state properties of objects that should be respected at all times. This Gem is concerned with the Type_Invariant aspect.

  • Gem #147 : Su(per)btypes in Ada 2012 - Part 2

    In the previous Gem in this series, we saw how the aspect Static_Predicate can be used to state properties of scalar objects that should be respected at all times. This Gem is concerned with the Dynamic_Predicate aspect.

Live Docs

  • GNAT User’s Guide for native platforms »

    This guide describes the use of GNAT, a compiler and software development toolset for the full Ada programming language.

    It describes the features of the compiler and tools, and details how to use them to build Ada 95 applications.

  • GNAT Reference Manual »

    This manual contains useful information in writing programs using the GNAT compiler. It includes information on implementation dependent characteristics of GNAT, including all the information required by Annex M of the standard.

Technical Papers

Code Samples

Development Log

Press Releases

In the Press