Development Log

  • GNAT Pro | GPS | GNATbench
    Apr 10th, 2017

    GPS: New Build & Run and Build & Debug buttons
    A Build & Run and a Build & Debug toobar button have been introduced. Clicking on these buttons has for effect to build the selected executable before performing the second action (either Run or Debug).

  • GNAT Pro
    Apr 7th, 2017

    Better message on violation of No_Dynamic_Allocation
    The Ravenscar profile includes a restriction on dynamic allocation. Its violation is usually detected in the back-end, with an obscure message that does not refer directly to the entity responsible for the dynamic allocation (which is typically a discriminated object with non-static discriminants). This enhancement adds a source warning to pinpoint more precisely the cause of the subsequent error and compiler rejection.

  • GNAT Pro
    Apr 6th, 2017

    Elimination of out-of-line body with Inline_Always
    The compiler now always eliminates the out-of-line body of a subprogram subject to pragma Inline_Always.

  • GNAT Pro | GPS | GNATbench
    Apr 5th, 2017

    GPS: GPS.Debugger allows to manipulate frames now
    The python GPS.Debugger now has following methods - current_frame, frame_down, frame_up, frames, select_frame.

  • GNAT Pro | GPS | GNATbench
    Mar 30th, 2017

    GNATDOC: Support for extraction of doc from bodies
    GNATdoc is now able to process bodies, and extract documentation from bodies and generate separate pages for these bodies in the resulting HTML output. This is activated via the command-line switch '-d'.

  • SPARK Pro
    Mar 30th, 2017

    Globals of renamed subprograms in code not-in-SPARK
    GNATprove now synthesizes more precise Global contracts for subprograms annotated with SPARK_Mode => Off that make calls via subprogram renamings. Such calls happen, for example, in instances of generic units with formal subprogram parameters.

  • GNAT Pro | GPS | GNATbench
    Mar 28th, 2017

    GPS: Auto fix for prefix of Result attribute
    GPS provides auto fix to help with compiler errors of the form 'incorrect prefix for attribute "Result", expected "Incr2"'.

  • GNAT Pro | GPS | GNATbench
    Mar 27th, 2017

    GNATDOC: Documentation for concurrent constructs
    Detailed information is generated for task and protected objects, including their subprograms and entries.

  • CodePeer
    Mar 27th, 2017

    Better messages for null statements
    CodePeer flags both dead null statements and predetermined test conditions which govern the possible execution of null statements.

  • SPARK Pro
    Mar 24th, 2017

    Empty “others” alternative in Case statement
    Flow analysis now detects when an "others" alternative of a Case statement corresponds to an empty range and effectively considers its sequence of statements as unreachable. This helps to avoid spurious messages about variables not being referenced or initialized within that sequence of statements.

  • 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.

  • GNAT Pro | GPS | GNATbench
    Mar 20th, 2017

    GPS: The Window menu now contains icons
    Icons were added in the Window menu for editors. This allows displaying which editors are currently modified.

  • SPARK Pro
    Mar 20th, 2017

    Theories for conversion of discrete types realized
    The Why3 theories used by GNATprove to model conversions between discrete types have been realized in Coq. This increases confidence in their correction.

  • GNATCOLL.Traces performance improvements
    Performance has been significantly enhanced: streams no longer flush after each message by default (though this is now configurable in the configuration file), locking is done at the stream level, and can often be avoided altogether since the system provides its own locking, messages are created as a whole line and then sent once to the stream, which provides more flexibility when writing streams, and other various enhancements. In a single threaded application, we now output 6 million messages per second to a file.

  • GNAT Pro
    Mar 16th, 2017

    GNAT includes a ZFP runtime for Linux and Windows
    The native ZFP (Zero Footprint) runtime for Linux and Windows is now part of the base GNAT package. It is now also available with 64-bit compilers. This runtime is similar to the ZFP runtimes that are delivered with our bare metal products and can be used to test an embedded project in a native environment.

  • CodePeer
    Mar 15th, 2017

    Better messages for .scil file creation failure
    If CodePeer unsuccessfully attempts to create a .scil file, then generate an additional error message which includes the full name of the file which could not be created. If it appears likely that the source of the problem is a Windows-specfic restriction on filename lengths, then that is also noted in a message.

  • GNATCOLL.Mmap: support files larger than 2Gb
    This package now supports mapping files up to 1 petabyte, on 64 bits systems. This is backward compatible, although to access such large files you will need to use some different functions. This package also includes support for the madvise() system call on Unix systems, which might provide a 5% performance improvements when accessing files sequentially.

  • GNATCOLL.Strings: new package
    This package, and the generic implementation in GNATCOLL.Strings_Impl, provide a new string type. A XString is similar to an unbounded string, but more efficient (up to 10x for strings 23 characters or less, or when manipulating substrings, and up to 1.4 for larger strings), and with a more extensive API.

  • GNATCOLL.Promises: new package
    This package provides a promise type, also known as a future in some language. This is a way to perform background computation, then chain a series of callbacks which can themselves perform asynchronous computation.

  • GNAT Pro
    Mar 13th, 2017

    Option to turn run-time exception warnings to errors
    The compiler supports a new switch -gnatwE that treats warnings that run-time exceptions will occur as compile-time errors.

  • Ada Web Server
    Mar 11th, 2017

    Add support for type/subtype in ada2wsdl
    The tool ada2wsdl will now generate proper WSDL out of Ada specs using types or subtypes to derived from other Ada specs.

  • SPARK Pro
    Mar 9th, 2017

    New switch produces header in gnatprove.out
    The new switch --output-header produces a header in the generated file gnatprove.out, with useful information about the run of GNATprove, such as the version number, date, host platform and switches used.

  • GNAT Pro | GPRbuild
    Mar 7th, 2017

    Extending a package from a project being extended
    In an extending project A, it is now possible to extend a package P from the project being extended B, when project B is extending another project C and package P is not declared in project B but has only been inherited from project C.

  • Ada Web Server
    Mar 7th, 2017

    Add support for xsd:dateTime in ada2wsdl
    The ada2wsdl tool will now generate a SOAP xsd:dateTime for references to the standard Ada.Calendar.Time.

  • GNAT Pro
    Mar 4th, 2017

    Ceiling locking on Linux without root privileges
    Ceiling locking on Linux no longer requires root privileges. Instead, you can run "sudo /sbin/setcap cap_sys_nice=ep exe_file" to set the relevant capability on the executable file, and then that program can use ceiling locking without running as root.

  • Ada Web Server
    Mar 4th, 2017

    Add support for selecting encoding in ada2wsdl
    The ada2wsdl tool has a new option to select the encoding to be used by the SOAP services.

  • GNAT Pro | GPRbuild
    Feb 28th, 2017

    Environment variables TEMP and TMP for temp dir
    In addition to environment variable TMPDIR, TEMP and TMP are potentially used by the Project Manager to store temporary files. If one of these environment variables designates the absolute path of a directory, this directory is used to store the temporaty files. TMPDIR is checked first, then TEMP, then TMP. If none of those designates the full path of a directory, then the temporary files are stored in object directories.

  • GNAT Pro | GPS | GNATbench
    Feb 27th, 2017

    GPS: Locate in Project view and flat mode
    The "Locate in Project View" action now works for both normal and flat modes, without switching the mode.

  • GNAT Pro | GPS | GNATbench
    Feb 27th, 2017

    GPS: Locate in Project view and flat mode
    The "Locate in Project View" action now works for both normal and flat modes, without switching the mode.

  • GNAT Pro
    Feb 27th, 2017

    Warning messages for null-excluding components
    Warnings are now issued on composite objects that have components of a null-excluding access type that are default initialized to null, as such initializations will raise Constraint_Error.

  • GNATCOLL.SQL: New routines for SQL_Criteria
    Length routine returns number of criteria on the upper level of SQL_Criteria delimited by the same logical operator "OR" or "AND". Is_And and Is_Or routines to discover upper level boolean operation of criteria. Combine routine to create SQL_Criteria from list of criteria.

  • SPARK Pro
    Feb 24th, 2017

    Dynamic type constraints of protected components
    GNATprove now better tracks dynamic type constraints of protected components, such as dynamic bounds, predicates and invariants. This results in more automatic proof on protected operations or their callers, whenever types of protected components have some dynamic constraints.

  • GNAT Pro | GPRbuild
    Feb 23rd, 2017

    GPRbuild response files
    GPRbuild now supports response files. A response file is a text file, specified to gprbuild with argument '@<argument_file_path>'. The path is either absolute or relative to the current working directory. Each line in a response file is an argument for gprbuild. An argument '@<file>' is not allowed in a response file.

  • CodePeer
    Feb 23rd, 2017

    Support for -jxxx switch
    CodePeer now supports the -jxxx switch as an alias for the existing switch -jobs xxx, for consistency with other GNAT tools. This switch enables the use of multiple processes for SCIL generation and analysis.

  • GNAT Pro
    Feb 22nd, 2017

    Removal of restriction on Scalar_Storage_Order usage
    The restriction whereby a record type cannot contain a component whose type is a bit-packed array and which has a different scalar storage order from the record type has been removed.

  • CodePeer
    Feb 21st, 2017

    Compiler Mode now remembers previous messages
    When using the -compiler-mode switch, messages generated from the previous run on files that have not changed are now displayed.

  • GNAT Pro | GPS | GNATbench
    Feb 20th, 2017

    GPS: Selectable file property labels
    The labels containing the base name and directory of a file in the Properties dialog are now selectable, which means you can copy/paste from them.

  • GNAT Pro | GPS | GNATbench
    Feb 20th, 2017

    GPS: selectable file property labels
    The labels containing the base name and directory of a file in the Properties dialog are now selectable, which means you can copy/paste from them.

  • GNATCOLL.SQL handling of postgresql schema
    When a database uses multiple schemas (table names starting with prefixes like "schema1.table" and "schema2.table" for instance), gnatcoll_db2ada will now generate nested packages to avoid name conflicts and let users use the same "." notation they do in SQL. For instance, Database.Schema1.Table.

  • SPARK Pro
    Feb 15th, 2017

    Contracts for formal containers with model functions
    The formal containers library, which provides SPARK-compatible versions of Ada containers, has been enriched with comprehensive contracts. These contracts use functional, mathematical-like containers as models of imperative containers.

  • GNAT Pro
    Feb 13th, 2017

    Support aliases when defining user command in gdb
    When defining a user command in gdb with the command "define", abbreviations (e.g. "command" for "commands") are now fully supported.

  • GNAT Pro
    Feb 10th, 2017

    Support of extended interrupts on leon3-elf
    The Ravenscar runtimes now support the extended interrupts of the interrupt controller. You need to set the Extended_Interrupt_Level constant in s-bbbopa.ads and rebuild the runtime, as it is not enabled by default.

  • GNATCOLL.Utils One more Split routine
    The new Split routine calls specified function for each found substring. The callback function can stop the string processing by returning False.

  • GNAT Pro
    Feb 9th, 2017

    Elaboration checks for dispatching calls
    The compiler now installs access-before-elaboration checks on library-level nonabstract primitive operations of tagged types in either elaboration mode. A dispatching call which occurs during elaboration and targets such a primitive will fail with Program_Error if the body of the primitive was not elaborated.

  • GNAT Pro | GPS | GNATbench
    Feb 6th, 2017

    WB: Create missing scenario.makefile during build
    When building projects having GNATbench nature, if scenario.makefile is not found, it is created before the Wind River Workbench build is started. This is useful for headless builds done by continuous builders when the scenario.makefile file is not under version control.

  • GNAT Pro | GPS | GNATbench
    Feb 6th, 2017

    WB: create missing scenario.makefile during build
    When building projects having GNATbench nature, if scenario.makefile is not found, it is created before the Wind River Workbench build is started. This is useful for headless builds done by continuous builders when the scenario.makefile file is not under version control.

  • GNAT Pro
    Feb 6th, 2017

    Improved elaboration checks in complex code
    The compiler now generates access-before-elaboration checks for subprogram calls occurring within complex code such as the branches of a conditional.

  • SPARK Pro
    Feb 5th, 2017

    Different message for floating point overflows
    Previously, for overflows on integer types and floating point types, the SPARK check message mentioned simply "overflow check". This made it difficult to know if the check was an overflow on integers or floating point numbers. Now, the message for floating point overflow checks mentions "float overflow check". The message for integer overflow is unchanged.

  • GNAT Pro | GPS | GNATbench
    Feb 2nd, 2017

    GB: Add check syntax/semantic, recompute xref menus
    Check Ada File(s) Semantic, Check Ada File(s) Syntax, Recompute Xref Info & Compile All Sources contextual menus added.

  • GNAT Pro | GPRbuild
    Feb 2nd, 2017

    Add support for skipping new project generation
    The new GPRinstall's --no-project command line option and install package attribute Install_Project can be used to disable generation and installation of the project file.

  • GNAT Pro | GPS | GNATbench
    Feb 2nd, 2017

    GB: add check syntax/semantic, recompute xref menus
    Check Ada File(s) Semantic, Check Ada File(s) Syntax, Recompute Xref Info & Compile All Sources contextual menus added.

  • CodePeer
    Feb 1st, 2017

    Generation of test vectors disabled by default
    Support and documentation for test vectors has been removed, since this capability is only partially implemented and sometimes generates confusing information. It can be temporarily reenabled via a debug switch "-dbg-on test_vectors".

  • GNATCOLL.SQL: support for PostgreSQL range types
    The new package GNATCOLL.SQL.Ranges provides support for range types, as available in PostgreSQL. Predefined instances are provided in GNATCOLL.SQL.Postgres.

  • GNAT Pro | GPRbuild
    Feb 1st, 2017

    New gprbuild switch—no-complete-output / -n
    A new switch is added to gprbuild, --no-complete-output or equivalent -n. This switch is only accepted on the command line, not in package Builder. When this switch is used, no files .stderr or .stdout are created by the compilers. This switch also cancels any previous switch --complete-output.

  • SPARK Pro
    Jan 31st, 2017

    New switch—no-inlining prevents inlining for proof
    The special inlining used in GNATprove to increase the precision of proof may be harmful in some cases, as it increases precision at the cost of longer running time and greater memory usage. GNATprove now supports no inlining under switch --no-inlining.

  • GNAT Pro | GPRbuild
    Jan 30th, 2017

    New attribute Install_Project in package Install
    This new attribute controls whether to install a project file together with the sources and/or objects and libraries.

  • GNAT Pro | GPS | GNATbench
    Jan 30th, 2017

    GPS: Changing perspective from main toolbar
    GPS now includes a new button to the right of the main toolbar, to let users easily switch perspectives.

  • GNAT Pro | GPS | GNATbench
    Jan 30th, 2017

    GPS: changing perspective from main toolbar
    GPS now includes a new button to the right of the main toolbar, to let users easily switch perspectives.

  • GNATCOLL.SQL.SQLITE: support for URI filenames
    Support for sqlite's URI filename has now been added, via a new parameter to GNATCOLL.SQL.Sqlite.Setup

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Fixed_Equality_Checks
    A new rule named Fixed_Equality_Checks is added to gnatcheck. It flags all calls to the predefined equality operations for fixed- point types.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Unchecked_Address_Conversions
    A new rule named Unchecked_Address_Conversions is added to gnatcheck. It flags instantiations of Ada.Unchecked_Conversion where the actual for the formal type Source is the System.Address type (or a type derived from it), and the actual for the formal type Target is an access type.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule POS_On_Enumeration_Types
    A new rule named POS_On_Enumeration_Types is added to gnatcheck. It flags the 'Pos attribute in cases where the attribute prefix denotes an enumeration type (including types derived from enumeration types).

  • GNAT Pro
    Jan 28th, 2017

    New rule Enumeration_Representation_Clauses
    A new rule named Enumeration_Representation_Clauses is added to gnatcheck. It flags enumeration representation clauses.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Unchecked_Conversions_As_Actuals
    A new rule named Unchecked_Conversions_As_Actuals is added to gnatcheck. It flags a call to an instantiation of Ada.Unchecked_Conversion used as an actual in procedure or entry call or given as a default value in a subprogram or entry parameter specification.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Deriving_From_Predefined_Type
    A new rule named Deriving_From_Predefined_Type is added to gnatcheck. It flags a derived type declaration when the ultimate ancestor type is a predefined Ada type.

  • GNAT Pro
    Jan 28th, 2017

    New rule Default_Values_For_Record_Components
    A new rule named Default_Values_For_Record_Components is added to gnatcheck. It flags record component declarations that have default expressions.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Objects_Of_Anonymous_Types
    A new rule named Objects_Of_Anonymous_Types is added to gnatcheck. It flags any object declaration located immediately within a package declaration or a package body (including generic packages) when the object declaration has an anonymous access or array type definition.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Uninitialized_Global_Variables
    A new rule named Uninitialized_Global_Variables is added to gnatcheck. It flags object declarations located immediately within a package declaration, a generic package declaration, or a package body, when they do not have explicit initializations.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Nested_Subprograms
    A new rule named Nested_Subprograms is added to gnatcheck. It flags any subprogram declaration, subprogram body declaration, subprogram instantiation, expression function declaration, or subprogram body stub that is not a completion of another subprogram declaration and that is declared within a subprogram body (including bodies of generic subprograms), task body, or entry body directly or indirectly (that is, possibly within a local nested package).

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Binary_Case_Statements
    A new rule named Binary_Case_Statements is added to gnatcheck. It flags a case statement if this statement has only two alternatives, one containing exactly one choice, and the other containing exactly one choice or the OTHERS choice.

  • GNAT Pro
    Jan 28th, 2017

    New gnatcheck rule Null_Paths
    A new rule named Null_Paths is added to gnatcheck. It flags a statement sequence that is a component of an if, case, or loop statement when this sequence consists entirely of null statements.

  • GNAT Pro
    Jan 27th, 2017

    New parameter for Identifier_Suffixes gnatcheck rule
    A new parameter Access_Obj_Suffix is added to the gnatcheck Identifier_Suffixes rule. It allows specifying suffixes for objects of access types to be checked.

  • GNATCOLL.Traces add support for prefix decorators
    These decorators can be used to add information at the beginning of each log line, before the indentation and the name of the trace handle. Such information will always be aligned, so it might be convenient to display timestamps for instance.

  • SPARK Pro
    Jan 25th, 2017

    SPARK tools produce more information about VCs
    Previously, it was hard to see which VCs were produced for a given check, and which prover was used to attempt to prove it. Now, this information is stored in the .spark files that are produced by GNATprove. The content of these files is now documented.

  • SPARK Pro
    Jan 23rd, 2017

    New lemmas on monotonicity of float operators
    The SPARK lemma library includes six new lemmas on the monotonicity of the float addition, substraction, multiplication and division.

  • GNAT Pro
    Jan 20th, 2017

    Ability to check removal of Ghost code in object
    The names of Ghost entities in the objects and executables are now uniquely prefixed with "___ghost_" (three leading underscores). This makes it possible to independently check the removal of Ghost code by the compiler when generating the final executable with Ghost assertion policy of Ignore (the default).

  • GNAT Pro
    Jan 18th, 2017

    Better warnings for suspicious postconditions
    Postconditions (and consequences of contract cases) that do not refer to the post-state of the subprogram are suspicious, as they should either be preconditions, or another expression was meant to be checked. Originally only full postconditions were checked, now all conjuncts in a conjunction of Boolean sub-expressions are individually checked for such issues.

  • GNAT Pro
    Jan 17th, 2017

    Relaxed and strict secondary stack management
    The compiler now employs two different schemes of managing the secondary stack - relaxed and strict. In relaxed mode, a context which uses the secondary stack will no longer manage it if there exists an enclosing construct which already does that. This behavior cannot propagate beyond packages and subprograms. Relaxed mode is the default mode of secondary stack management. In strict mode, any context which uses the secondary stack will manage it unconditionally. This behavior can be enabled by switch -gnatd.s.

  • GNAT Pro
    Jan 13th, 2017

    Reduce -Wstack-usage false positives with strings
    The number of false positives reported by the compiler for the -Wstack-usage warning on strings or arrays has been reduced.

  • SPARK Pro
    Jan 12th, 2017

    Check default of private types at declaration
    GNATprove now checks that no runtime error can occur during the default initialization of private types once and for all at the declaration of the type. This enforces a cleaner separation of library code from user code, allowing for an easier integration of proof with other verification means (tests, review...).

  • GNAT Pro
    Jan 9th, 2017

    Do not emit unit version on bare board platforms
    On bare board platforms, units versions for Version and Body_Version attributes are not emitted anymore when not needed.

  • SPARK Pro
    Jan 6th, 2017

    Support for arbitrary lengths of entry queues
    GNATprove now supports arbitrary lengths of entry queues (which are specified by the Max_Queue_Length and Max_Entry_Queue_Length pragmas). This feature is only applicable when the GNAT Extended Ravenscar profile is active.

  • SPARK Pro
    Jan 5th, 2017

    Add message on proved termination
    When GNATprove is able to prove a Terminating annotation an info message is issued.

  • SPARK Pro
    Jan 5th, 2017

    Support of caching using memcached server
    The SPARK tools now support caching large parts of the analysis via a memcached server. If a memcached server is available to store analysis results, and this server is specified to GNATprove via the command line option --memcached- server=hostname:portnumber, then subsequent invocations of the tools, even across different machines, can store intermediate results of the tools. The user-visible effect is that GNATprove can produce results faster.

  • GNAT Pro | GPRbuild
    Jan 5th, 2017

    New GPRname switch—ignore-duplicate-files
    GPRname has a new switch --ignore-duplicate-files which will ignore identical basenames when scanning for sources. In addition, a warning is now emitted by default when not using this switch to warn about potential conflicts when duplicate filenames are found.

  • GNAT Pro
    Jan 3rd, 2017

    Improved debug information for enumeration types
    In its DWARF output, GNAT now generates DW_AT_encoding attributes for all DW_TAG_enumeration_type DIEs. These describe the signedness of the corresponding enumeration types, allowing precise interpretation of subranges.

  • GNAT Pro
    Jan 2nd, 2017

    No_Inline is a legal aspect name
    The GNAT-specific pragma No_Inline is now accepted as a legal aspect name, in analogy with the Ada aspect No_Return.

  • CodePeer
    Dec 27th, 2016

    Improved handling of SCIL version mismatch
    When a SCIL version mismatch is detected (e.g. when using a new version of CodePeer) CodePeer will now display a simple info message and will automatically remove obsolete files, and regenerate them.

  • CodePeer
    Dec 23rd, 2016

    Incremental analysis via persistent annotations
    A beta version of incremental analysis is available where CodePeer will save the result of its full analysis on disk via the -persistent-annotations switch, allowing reuse in subsequent runs when the files are still up to date. This allows both faster re- analysis and more precise results.

  • SPARK Pro
    Dec 21st, 2016

    More precise analysis for exclusive use of entries
    Tasks were previously only allowed to call the same entry if they were using entries belonging to different (library-level) objects. Now GNATprove also accepts calls from more than one task to a single entry provided that each task uses an entry belonging to a different component of a record object.

  • GNAT Pro
    Dec 19th, 2016

    Support of extended interrupts on leon3-elf
    The ravenscar runtime can now support extended interrupts on leon3 targets, like Leon4 or UT700. User needs to edit s-bbbopa.ads to set the generated interrupt.

  • GNAT Pro
    Dec 15th, 2016

    Implement workaround for LEON3FT b-to-b store errata
    The compiler switch -mfix-ut699 has been enhanced to work around the issues present in Cobham Gaisler's UT699 LEON3FT processor and documented in the errata sheet titled "LEON3FT Stale Cache Entry After Store with Data Tag Parity Error". A new compiler switch -mfix-ut699e has also been added to work around the issues present only in the UT699E LEON3FT processor.

  • GNAT Pro | GPRbuild
    Dec 14th, 2016

    New attribute Required_Artifacts
    A new attribute Required_Artifacts has been introduced. This new attribute complements the Artifacts attribute and is very similar except that the artifacts must exist or an error is reported.

  • GNAT Pro | GPS | GNATbench
    Dec 13th, 2016

    GB: Use legacy cmd when target not found in Makefile
    When running a GNATbench command (compile/build/clean/...) on a GNAT project where builds are handled by a Makefile, if the expected target is not found in the Makefile, the standard command (ie, the one used for GNAT projects where builds are not handled by a Makefile) is used instead.

  • GNAT Pro | GPS | GNATbench
    Dec 13th, 2016

    GB: use legacy cmd when target not found in Makefile
    When running a GNATbench command (compile/build/clean/...) on a GNAT project where builds are handled by a Makefile, if the expected target is not found in the Makefile, the standard command (ie, the one used for GNAT projects where builds are not handled by a Makefile) is used instead.

  • GNAT Pro | GPRbuild
    Dec 13th, 2016

    New GPRname switch—ignore-predefined-units
    GPRname has a new switch --ignore-predefined-units which will not consider any predefined Ada unit (children of Ada, Interfaces and System packages) when scanning source files.

  • GNAT Pro
    Dec 12th, 2016

    Class-wide type invariant optimization
    Subprogram calls within class-wide type invariant expressions now get resolved as primitive operations instead of being dynamically dispatched.

  • GNAT Pro | GPS | GNATbench
    Dec 10th, 2016

    GNATDOC: Support for Ada 83 and Ada 95
    GNATdoc now supports processing Ada 83 and Ada 95 codebases, in addition to Ada 2005 and 2012.

« Previous    1  2  3  4     Next »