Development Log in December 2012.

  • GNAT Pro
    Dec 30th, 2012

    Avoid false elab warnings on assertion calls
    The warning circuit for elaboration calls has been enhanced to avoid some false positive warnings for functions called assertion expressions (e.g. the argument of a Postcondition pragma or Post aspect).

  • GNAT Pro
    Dec 30th, 2012

    Ada 2012 aspects allowed on renaming declarations
    In Ada 2012 mode, aspects are now allowed on all renaming declarations. This is relevant only for implementation-defined aspects (e.g. Warnings => Off).

  • GPRbuild
    Dec 29th, 2012

    New Linker attribute Trailing_Switches
    A new attribute Trailing_Switches has been added in package Linker of project files. These switches are added in the linking command line after the required switches, so that they can override these switches.

  • GNAT Pro
    Dec 28th, 2012

    Pragma Interface/Interface_Name and obsolescence
    Pragma Interface is now considered as violating the No_Obscolescent_Features restriction even in Ada 95 mode. Both pragmas Interface and Interface_Name generate warnings if -gnatwj is set. But note that Interface_Name is not considered to violate the restriction (since it is a GNAT defined pragma that does not appear in Annex J).

  • GNAT Pro
    Dec 25th, 2012

    Handling of missing IS for expression function
    Error handling for some common cases of forgetting the IS that follows an expressions function is improved, and a clear error message complaining about the missing IS is now given.

  • GPRbuild
    Dec 24th, 2012

    —config= in Builder switches
    gprbuild now takes into account a switch --config= in package Builder of the main project.

  • PolyORB
    Dec 21st, 2012

    Make predefined packages compatible with UTF-8
    IAC generates pragma Wide_Character_Encoding to allow usage of prodefined CORBA packages in code with different encoding.

  • Support for ‘json’ type in GNATCOLL.SQL
    It is now possible to specify a field type as 'json'. This will be translated to text or json, depending on the SQL engine.

  • GNAT Pro
    Dec 19th, 2012

    Improved diagnostic on invalid component rep-clause
    The compiler was improved to emit more precise error messages when detecting an invalid representation clause for a volatile or atomic record component, either misaligned or of a size not matching the type's Object_Size attribute.

  • GPRbuild
    Dec 19th, 2012

    Add support for distributed compilation
    It is now possible to use multiple computers to conduct the compilations. This can give good speed-up for large projects.

  • Specify postgreSQL’s port number
    It is now possible, when connecting to a postgreSQL server, to specify which port number should be used.

  • GPS | GNATbench
    Dec 17th, 2012

    GPS: tab menu allows easy selection of open tabs
    The right-click menu on notebook tabs now shows the list of all windows open in those tabs, which ease navigation.

  • SPARK Pro
    Dec 14th, 2012

    Additional standardisation in Simplifier
    The Simplifier now standardises conclusions after all other proof strategies are completed. In some cases this enables it to discharge conclusions that were previously left undischarged.

  • GPS | GNATbench
    Dec 13th, 2012

    GPS: clickable qualified name in editor status bars
    The name of the current subprogram, as displayed in the editor status bar, now includes the name of the enclosing subprograms and packages. Each of these names is clickable to easily jump to the beginning of the enclosing block.

  • SPARK Pro
    Dec 12th, 2012

    Rules for proof of rounding from real to integer
    The Examiner now emits rules for rounding to integer types when VCs involving real numbers are generated. This enables the proof tools to discharge VCs involving rounding which previously could not be proved without supplying user rules.

  • GNAT Pro
    Dec 12th, 2012

    Better handling of symbolic traceback in GNU/Linux
    It is now possible to get proper symbolic traceback from a shared library on GNU/Linux when using the GNAT.Traceback.Symbolic unit. The traceback crosses the shared library and gives proper symbolic information for the caller module (executable or shared library).

  • GNAT Pro
    Dec 8th, 2012

    Better handling of symbolic traceback in Win32 DLL
    It is now possible to get proper symbolic traceback from a Windows DLL when using the GNAT.Traceback.Symbolic unit. The traceback crosses the DLL and gives proper symbolic information for the caller module (executable or DLL).

  • GNAT Pro
    Dec 7th, 2012

    Accuracy of time conversions for bare board targets
    The implementation of functions To_Duration and To_Time_Span for bare board Ravenscar run-time libraries has been changed to reduce accuracy losses and the occurrence of overflows.

  • GPS | GNATbench
    Dec 6th, 2012

    GPS: Locations view has a toolbar
    Actions such as "clear locations" and the filter panel are now present in the view's toolbar to make them more accessible. The preference "Auto Jump To First Location" was removed from the preferences menu and moved to the toolbar as well.

  • GPS | GNATbench
    Dec 5th, 2012

    GPS: EditorOverlay can now highlight a whole line
    The EditorOverlay class can now be used in Python plugins to highlight an entire line, through the property "paragraph-background":

      # Create an overlay for an editor:
      b = GPS.EditorBuffer.get(GPS.File ("my_file.adb"))
      o = b.create_overlay("my_overlay_name")
    
      # Set the paragraph-background property to pink
      o.set_property ("paragraph-background", "#f0c0c0")
    
      # This highlights the entire line 317 in my file
      b.apply_overlay (o,
         GPS.EditorLocation(b, 317, 1),
         GPS.EditorLocation(b, 317, 1))
    

  • GNAT Pro
    Dec 5th, 2012

    Improve DFW server lookup for GPS/GDB for VxWorks
    When an exact match is found, favour it over other (partial) matches.

  • GNAT Pro | GPS | GNATbench
    Dec 5th, 2012

    GPS: EditorOverlay can now highlight a whole line
    The EditorOverlay class can now be used in Python plugins to highlight an entire line, through the property "paragraph-background":

      # Create an overlay for an editor:
      b = GPS.EditorBuffer.get(GPS.File ("my_file.adb"))
      o = b.create_overlay("my_overlay_name")
    
      # Set the paragraph-background property to pink
      o.set_property ("paragraph-background", "#f0c0c0")
    
      # This highlights the entire line 317 in my file
      b.apply_overlay (o,
         GPS.EditorLocation(b, 317, 1),
         GPS.EditorLocation(b, 317, 1))
    

  • GPS | GNATbench
    Dec 3rd, 2012

    GPS: local toolbars for views
    A number of views now have a local toolbar. They also display their configuration settings in a local menu rather than in the Preferences dialog or the contextual menu.