- Ada 2012
- Ada 2005 / 95 / 83
- Embedded Development
- Formal Methods
- Open Source
- Safety-Critical Development
- Static Analysis
Jan 31st, 2007
Extended syntax for port binding parameters
The configuration parameters indicating what port a server should bind to have now an extended syntax. If a single port number is specified, only that precise value will be used. If the port is already bound by another process, partition startup will fail. If a port range of the form "NNNN-MMMM" is specified, the ORB will iterate over the range until an available port is found. Note that the default behaviour for a single port number specification has changed, since we used to always iterate until an available port was found. The new syntax allows explicit control over this behaviour. This provides a means of ensuring that a server does not unexpectedly bind to a different port than the one specified in runtime configuration parameters.
Jan 19th, 2007
New keyword static in generated code output
Although Ada itself does not have a mechanism for declaring local entities with a static global allocation, the code generator does have this feature, and it is used in some Ada cases, e.g. for local exceptions in subprograms. Such usage is now indicated by the keyword static in the listing of generated code using -gnatG or -gnatD switches.
Jan 17th, 2007
Secondary stack supported in AAMP small library
Programs compiled for the AAMP target can now use features that depend on use of the secondary stack (for example, calls to functions returning results whose size is determined at run time).
Jan 16th, 2007
Stack checking on VxWorks 6
Stack checking (enabled by -fstack-check) has been implemented on the VxWorks 6 platform, both for the kernel and RTP modes. The library for showing task-related information needs to be linked into the VxWorks system (INCLUDE_TASK_SHOW).
New features for multi-language tool
AdaCore’s multi-language program build tool, gprmake, has been updated to provide a number of important enhancements. These include:
- support for Ada, C and C++ by default
- support for multi-language libraries
- support for new languages and/or toolchains through configuration files
- independence from a specific GNAT Pro version (that is, the same gprmake will work with different GNAT Pro releases)
A beta program for the new gprmake will be initiated later in 2007 and will be open to all AdaCore customers.
Jan 11th, 2007
Improved debugger message at exception
On Tornado, the debugger now prints a more useful message when a program being debugged triggers a hardware exception:
Program received exception, exception vector: 0x600.It used to print:
Program received signal ?, Unknown signal.
Jan 8th, 2007
Increased length of task images
On native platforms, the maximum length of a task image (set either automatically, or via pragma Task_Image) is increased to 256 (from 32).
Jan 8th, 2007
Fixed name of PortableServer::POA reference type
In the CORBA personality, the PortableServer.POAManager.Ref type has been renamed to PortableServer.POAManager.Local_Ref to be conformant with the IDL-to-Ada mapping. User code that references this type must be fixed accordingly. Accordingly, the conversion subprograms To_Ref and Unchecked_To_Ref have been accordingly renamed To_Local_Ref and Unchecked_To_Local_Ref.
Jan 7th, 2007
New pragma No_Body for dummy body files
In cases where a package spec file does not allow a body (for example when the package spec is a package renaming), it is now possible to provide a dummy body file that contains only comments and a No_Body pragma. This is recognized as indicating that no body is present. This is useful in system maintenance when a real body is eliminated.
Jan 6th, 2007
Warn on unnecessary Warnings Off pragmas
A new warning, activated by -gnatw.w, generates warnings on unnecessary Warnings Off pragmas, or warn that such pragmas could be replaced by use of Unmodified or Unreferenced where appropriate. This warning is off by default and is not included in -gnatwa.
Jan 3rd, 2007
Consistent binary image for tree files
The output of tree files by -gnatt is now guaranteed to generate consistent binary files. Previously, some uninitialized bytes were dumped, these were never read, so there was no actual bug, but it was inconvenient for two logically identical tree files to have different binary data.
Jan 1st, 2007
Ada 2005 attributes/pragmas in Ada 95 mode
All new attributes and pragmas defined in Ada 2005 are available in Ada 95 mode, but they are considered in this mode to be implementation defined, and will be treated as errors in the presence of No_Impementation_Pragmas or No_Implementation_Attributes restrictions.