Development Log in December 2010.

  • GNAT Pro
    Dec 25th, 2010

    Improvements to pragma Suppress_Initialization
    Pragma Suppress_Initialization now also suppresses any initialization that is associated with use of pragmas Initialize_Scalars or Normalize_Scalars. In addition, if Suppress_Initialization is applied to other than a first subtype, it applies only to that subtype, allowing usage like:

      type R is ....
      subtype S is R;
      pragma Suppress_Initialization;
    
    
    where objects of type R are initialized, but objects of type S are not. If the pragma is applied to the first subtype, then it affects all objects of the base type or any of its subtypes, as before. Finally, a check is made to ensure that the pragma does not appear after the type is frozen.

  • GNAT Pro
    Dec 25th, 2010

    Improvements to pragma Suppress_Initialization
    Pragma Suppress_Initialization now also suppresses any initialization that is associated with use of pragmas Initialize_Scalars or Normalize_Scalars. In addition, if Suppress_Initialization is applied to other than a first subtype, it applies only to that subtype, allowing usage like:

      type R is ....
      subtype S is R;
      pragma Suppress_Initialization;
    
    
    where objects of type R are initialized, but objects of type S are not. If the pragma is applied to the first subtype, then it affects all objects of the base type or any of its subtypes, as before. Finally, a check is made to ensure that the pragma does not appear after the type is frozen.

  • Ada | Ada 2005 / 95 / 83
    Dec 24th, 2010

    AI-0230 Null procedures with preconditions
    This AI stipulates that null procedures can only have classwide inheritable pre/postconditions. This is an extension of the rule for abstract subprograms given in AI05-0145.

  • Ada | Ada 2005 / 95 / 83
    Dec 24th, 2010

    AI-0113 Detection of conflicting external tags
    This AI adds a run-time check to the elaboration of tagged types to raise Program_Error if a user-specified external tag is the same as the external tag for some other declaration.

  • PolyORB
    Dec 23rd, 2010

    Support for partition-wide RPC timeout setting
    A new runtime parameter rpc_timeout in section [dsa] specifies a global timeout (in milliseconds) to be applied to all remote subprogram calls.

  • New package GNATCOLL.Config
    This package provides handling of configuration files, in particular Windows' INI files

  • GNAT Pro
    Dec 17th, 2010

    New SPARK restriction
    This restriction checks at compile time that some constructs forbidden in SPARK are not present. This is not a replacement for the semantic checks performed by the SPARK Examiner tool, as the compiler only deals currently with code, not at all with SPARK annotations and does not guarantee catching all cases of constructs forbidden by SPARK. This restriction can be useful in providing an initial filter for code developed using SPARK, or in examining legacy code to see how far it is from meeting SPARK restrictions.

  • GNAT Pro
    Dec 17th, 2010

    New SPARK restriction
    This restriction checks at compile time that some constructs forbidden in SPARK are not present. This is not a replacement for the semantic checks performed by the SPARK Examiner tool, as the compiler only deals currently with code, not at all with SPARK annotations and does not guarantee catching all cases of constructs forbidden by SPARK. This restriction can be useful in providing an initial filter for code developed using SPARK, or in examining legacy code to see how far it is from meeting SPARK restrictions.

  • GNAT Pro | GPS | GNATbench
    Dec 16th, 2010

    GB: Improve spell checking feature in Ada editor
    Under Eclipse, the spell checking now only considers comments and string literals. String literals spell checking can be disabled using the check box "Ignore string literals when spell checking" accessible from menu Window => Preferences => Ada => Editor.

  • GNAT Pro | XMLAda
    Dec 16th, 2010

    New input source for streaming sockets
    A new package was contributed by a user as an example on how to handle streaming input, as opposed to reading the whole input at once.

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

    GPS: “short titles” pref applies to docked windows
    This preference used to only have an effect on floating windows, but will now also force docked windows to use short titles (in particular base names for file editors).

  • Ada | Ada 2005 / 95 / 83
    Dec 13th, 2010

    AI-0228 Default_[Component_]Value aspects
    This AI introduces two additional aspects. Default_Value can be applied to a scalar first subtype, and specifies a default value to be used to initialize variables of this type. Default_Component_Value can be applied to an array first subtype having scalar components, and similarly specifies a default value for the components of a variable of this array type.

  • CodePeer
    Dec 10th, 2010

    Improved suport for access-to-subprogram types
    CodePeer now infers more precise information about the set of possible callees when analyzing an indirect call, similarly to what is done already for dispatching calls.

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

    GPS: New facility for handling VCS menus
    GPS provides a facility for handling all VCS menus in a centralized place, allowing customization of the layout of all VCS menus, both for systems that are supported out-of-the-box in GPS, and for custom VCS.

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

    GPS: New API to retrieve multiple files in contexts
    A new Python/Shell API (FileContext.files) allows retrieving as a list all files stored in a context. This is useful in particular when working with the VCS Explorer.

  • GNAT Pro | GPS | GNATbench
    Dec 8th, 2010

    GB: Add tooltips in Ada editor
    GNATbench now displays tooltips for entities in the editor, showing their profile and documentation. They can be disabled from the menu Window => Preferences => Ada => Editor.

  • Ada Web Server
    Dec 4th, 2010

    Enhance MIME types support
    It is now possible to specify the name of the file containing the list of MIME types through the server configuration. A standard MIME types is also provided.

  • GNAT Pro | GPS
    Dec 2nd, 2010

    Upcoming webinars - SPARK Pro and GPS 5.0

    A reminder that AdaCore will be hosting 2 webinars this month:

    December 7 - Angela Wallenburg will present and demo the new features available in SPARK 9.1 including the use of full range array subtypes, the relaxation of aliasing rules for record fields, the ability to specify VC generation on a per-file basis in metafiles, the introduction of new SPARK libraries, the introduction of the SPARKbridge feature.

    December 14 - Arnaud Charlet and Nicolas Setton will present and demo some of the new features available in GPS 5.0 including improved support for C/C++ in addition to its already comprehensive support for the Ada language, more powerful source editing, improved ease of use, better tool support (GNATstack, CodePeer), and enhanced documentation generation.

    To register for this webinars, please visit:

    http://www.adacore.com/home/products/gnatpro/webinars/

  • GNAT Pro | GPS | GNATbench
    Dec 1st, 2010

    GPS: new zap-to-char and just-one-space actions
    These actions complete the Emacs emulation in GPS, and have the same behavior as in Emacs. See the Key Shortcuts menu for more information.