Development Log in September 2005.

  • GNAT Pro
    Sep 28th, 2005

    Warning for select/else/delay
    The usage "select .. else .. delay .. end select" is very peculiar. Almost certainly the programmer intended to say "select .. or .. delay". A warning is now generated if the select/else/delay sequence is encountered.

  • GNAT Pro
    Sep 27th, 2005

    Better msg for non-modified volatile object
    Previously, a confusing warning message was given when volatile non-imported variable is never modified. The warning advised adding constant, but that's wrong in this case, since this would be illegal (RM C.6(13)). The warning is now specialized to advise that in this situation volatile has no effect.

  • GNAT Pro
    Sep 25th, 2005

    Static elab for generic instantiation
    Previously, any generic instantiation generated an indication of Elaborate_All desirable. But that is not needed for a subprogram instantiation, since in this case there is no transitive elaboration issue (elaborating the body of a subprogram does nothing other than to make it available to be called). The static elaboration model now indicates that in this case a pragma Elaborate is all that is required. This allows some cases to bind that were previously rejected due to a circularity caused by Elaborate_All.

  • GNAT Pro
    Sep 24th, 2005

    Better protected type debugging support
    The compiler and the debugger have been improved to provide better support for debugging protected type subprograms and entries. The debugger now prints the decoded name of both subprograms and entries. It is also now possible to insert a breakpoint inside an entry by using the entry name.

  • GNAT Pro
    Sep 22nd, 2005

    ALI files and lib files in different directories
    A new library attribute Library_ALI_Dir is defined for library project files to specify a directory where the ALI files are copied. When this attribute is not defined, ALI files are copied to the directory specified in attribute Library_Dir.

  • GNAT Pro
    Sep 14th, 2005

    Normalized parameter specifications in ASIS
    ASIS can now handle normalized forms of subprogram parameter specifications without any limitations.

  • GNAT Pro
    Sep 13th, 2005

    Remove unnecessary run-time checks
    The front end now removes some unnecessary access and range checks in code generated by the expander for the assignment of tagged or controlled objects, for which it is known by construction that they will always pass.