Development Log in August 2015.

  • GNAT Pro
    Aug 31st, 2015

    Debug info for subprogram renamings
    The compiler now generates debugging information for subprogram renamings, and GDB has been enhanced to make use of it, thus permitting calls to subprograms using the names declared by any of their renamings.

  • GNAT Pro
    Aug 31st, 2015

    New procedure GNAT.OS_Lib.Copy_File_Attributes
    This procedure can be used to copy timestamp and/or file permissions from one file to another.

  • GPS | GNATbench
    Aug 19th, 2015

    GB: Option to disable task tags checking
    Added an option to disable task tags checking. It is on by default. To disable, uncheck the Task Tags field in the Ada -> Task Tags preference page.

  • CodePeer
    Aug 18th, 2015

    Simplified analysis of predefined units & children
    The -gnatg switch is no longer needed to analyze predefined units or new child units of System (and other root units predefined in Ada).

  • GPS | GNATbench
    Aug 17th, 2015

    GPS: xref for custom languages
    GPS lets you describe programming languages via plug-ins. In particular, you can declare the rules used for syntax highlighting, and for the naming schemes of their source files. If you also declare the LI_Suffix to be .ali, GPS will now parse any .ali file it finds that relates to those source files, and automatically parse the cross-reference information. Those .ali files must have a structure similar to the ones generated by GNAT or gcc.

  • GPS | GNATbench
    Aug 17th, 2015

    GPS: search in current editor
    A new search context was added to the omni-search, to search only in the current editor. It is mostly intended to be used via a key shortcut. Whenever you press the keyshort, and then start typing some text, a popup window will show all matches in the current editor.

  • GPS | GNATbench
    Aug 17th, 2015

    GPS: new switches—config and—autoconf
    GPS can now optionally parse a config file (.cgpr) before loading the project, like gprbuild does. Such a file is in particular useful to specify naming schemes for programming languages, without having to duplicate this information in a GPS plug-in. The file is automatically passed to gnatinspect.

  • GNAT Pro
    Aug 12th, 2015

    Support for AI12-0054-2 Predicate_Failure
    The Predicate_Failure aspect is now supported. You may use it to specify which exception to raise on predicate failure, as in:

      subtype T is ... with
          Predicate => ...,
          Predicate_Failure => raise Some_Error;
    

  • GPS | GNATbench
    Aug 10th, 2015

    GPS: Add back aliases completion
    Aliases completion has been added back to the 6.2.0 release. The priority in the completion window is now lower, so that keyword completion takes precedence.

  • GPS | GNATbench
    Aug 10th, 2015

    GNATdoc: Preserve formatting of comments
    GNATdoc can preserve line breaks and spaces present in the source comments when generating HTML documentation.

  • GNAT Pro
    Aug 10th, 2015

    Support for AI12-0071
    AI12-0071, which specifies the semantics of multiple/inherited predicates on a single subtype, is now implemented.

  • GNAT Pro
    Aug 7th, 2015

    Restriction No_Dynamic_Sized_Objects
    A new restriction No_Dynamic_Sized_Objects is implemented, which is intended to prevent the creation of composite objects of nonstatic size.

  • GNAT Pro
    Aug 7th, 2015

    Add support for terminating a process
    System.OS_Lib has support for nonblocking spawning of processes, and it's now possible to terminate such processes with a new Kill procedure. This routine is supported only on Windows and POSIX systems.

  • GPRbuild
    Aug 6th, 2015

    Proper process clean-up in distributed build
    When a builder is interrupted (ctrl-c), GPRslave will kill all corresponding processes. By doing this we ensure faster and cleaner restart of the same compilation.

  • SPARK Pro
    Aug 5th, 2015

    Detection of some corrupted ALI files
    The SPARK toolset now detects some cases of corrupted ALI files and informs users about how to fix them.