Development Log    See All »

  • GNAT Pro
    Mar 24th, 2017

    Automatic reordering of components in record types
    The compiler can now reorder components in record types with convention Ada in order to fix blatant inefficiencies that the layout of components in textual order would bring about. The reordering is automatic and silent by default, but both characteristics can be toggled: pragma No_Component_Reordering disables it either on a per-record-type or on a global basis, while -gnatw.q gives a warning for each affected component in record types.

  • GNAT Pro
    Mar 23rd, 2017

    Relax alignment constraint for record extensions
    On x86 and, more generally, architectures that do not require strict alignment for memory accesses, the compiler now accepts size clauses on record type extensions that effectively lower the alignment of the type, if there is also a representation clause on the type.

  • SPARK Pro
    Mar 21st, 2017

    Simplified translation of simple private types
    Untagged private types with no discriminant whose full view is not in SPARK are now translated in Why3 as clones of the predefined __private abstract type. This should allow users of interactive proof assistants to more easily map these private types to a logic type of their choice.

Documentation    See All »

  • AUnit Cookbook

    This is a short guide for using the AUnit test framework. AUnit is an adaptation of the Java JUnit (Kent Beck, Erich Gamma) and C++ CppUnit (M. Feathers, J. Lacoste, E. Sommerlade, B. Lepilleur, B. Bakker, S. Robbins) unit test frameworks for Ada code.

  • GNATbench for WRS Workbench User’s Guide

    This User’s Guide describes how to use the GNATbench Ada plug-in for Windriver Workbench . Specific help is provided for configuring projects, building systems, and debugging.

  • QGen User Guide

    This is the user documentation for QGen, a qualifiable and tunable code generation and model verification tool for a safe subset of Simulink® and Stateflow® models.

  • The GNU binary utilities

    This is the documentation for GNU Binary Utilities.

  • The GNU linker

    This is the documentation for GNU ld, the GNU linker, part of GNU Binutils.