Development Log in December 2008.

  • GNAT Pro
    Dec 26th, 2008

    Eliminate unnecessary length checks
    Improved compile-time evaluation of Length and Range_Length attributes allows detection of more cases at run time where assignments of arrays are known to either pass or fail a length check, allowing elimination of the check in the first case, and a compile time warning in the second case.

  • GNAT Pro | GPS | GNATbench
    Dec 23rd, 2008

    Support for VCS without log
    It is now possible to create a VCS that do not require a log (logs are handled by external commands like ClearCase GUI for example). In this case GPS won't ask for a log file while doing the commit/add/remove VCS actions.

  • Ada Web Server
    Dec 15th, 2008

    Administrative page is now protected by a password
    Enhance the security of the administrative page by requiring a password.

  • GNAT Pro
    Dec 11th, 2008

    Reimplementation of GNAT.Sockets.Inet_Addr
    The implementation of function Inet_Addr now uses the standard inet_pton(3) function instead of the legacy inet_addr(3) interface, which is deprecated and defective on some platforms. Note that on Linux, inet_pton enforces stricter syntax checks that inet_addr, which can cause an exception to be raised for syntactically incorrect arguments (e.g. including trailing white space) that used to be accepted.

  • GNAT Pro | GPS | GNATbench
    Dec 11th, 2008

    Report all style errors at once
    When running the style checkers (on files and logs) GPS will now report errors from all files and will not stop checking on the first file violating some styles.

  • Ada Web Server
    Dec 11th, 2008

    Add support for controlling connection timeout
    The AWS client API had support for controlling send/receive timeout, it is now also possible to control the timeout of the initial socket connection.

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

    Support for SPARK Toolset 7.6.2
    GPS is now compatible with version 7.6.2 of the SPARK Toolset.

  • GNAT Pro
    Dec 9th, 2008

    New constants in GNAT.Sockets
    New constants of type Inet_Addr_Type are provided by GNAT.Sockets: Loopback_Inet_Addr (local host on loopback interface), Unspecified_Group_Inet_Addr (unspecified multicast group), All_Hosts_Group_Inet_Addr (all hosts on local network multicast group) and All_Routers_Group_Inet_Addr (all routers on local network multicast group).

  • GNAT Pro | GPS | GNATbench
    Dec 9th, 2008

    Minor optimization for handling VCS status
    The local file statuses where not used to override current statuses on the VCS explorer. It is now updating the VCS explorer as long as the local status won't override a remote status (Needs update or Needs merge).

  • GNAT Pro
    Dec 4th, 2008

    Clarified spec of GNAT.Sockets.Abort_Selector
    The documentation of GNAT.Sockets.Abort_Selector has been improved to define more precisely the behaviour of this function. It is now clearly specified that each call to Abort_Selector causes exactly one call to Check_Selector to return with Aborted status. (Note that this is a change in documentation only, giving a more precise description of the already implemented behaviour.)

  • GNAT Pro
    Dec 2nd, 2008

    Integer Array types added to package Aux_DEC
    Integer array types for 8, 16, 32, and 64 bit integers have been added to System.Aux_DEC. These types are used in DEC Ada text library Sys$library:Starlet_Recent_Ada_Subset.tlb and other DEC Ada library code.

  • GNAT Pro
    Dec 2nd, 2008

    Improved error reporting in GNAT.Sockets
    Two improvements have been made to the error reporting circuitry in GNAT.Sockets. A new literal Broken_Type has been added to enumeration type Socket_Error_Type, corresponding to errno value EPIPE. Specific handling has also been implemented for EAGAIN. On most platforms, this is the same value as EWOULDBLOCK, which is mapped to Resource_Temporarily_Unavailable. Uniform treatment is now provided also on platforms where EAGAIN and EWOULDBLOCK are distinct values, and both are now resolved to Resource_Temporarily_Unavailable.