- Ada 2012
- Ada 2005 / 95 / 83
- Embedded Development
- Formal Methods
- Open Source
- Safety-Critical Development
- Static Analysis
Jul 31st, 2004
Improved secondary stack handling
For those cases where the secondary stack is still used for return of variable length values (see also D621-002), the code has been improved to reduce the number of calls to determine the current task, improving performance.
Better debugging for task entries
For tasks waiting on a task entry, the commands "info task" and "info tasks" gives now the id of the task which is accepting the rendezvous.
Improved loading time in GDB for VxWorks
The time for GDB to read a object file and load it to the target has been significantly reduced; instead of buiding its complete debug table at load time, GDB now does it on demand.
Jul 23rd, 2004
Better exception support on Tru64 5.1b
Added the required support for unwinding through signal handlers on Tru64 5.1b. It allows exception propagation through signal handlers when using the zero cost exception mechanism.
AI-252 Object.Operation notation
The new notation allows object-oriented programming model that is based on applying operations to objects, rather than selecting operations from a package and then applying them to parameters.
Check for duplicated export name
A check is made for the case of an export name duplicated in a single compilation, and if this situation is found, a clear error message is given at compile time, instead of a mysterious assembler error.
Warnings for I/O of access values
A new warning is activated if Direct_IO or Sequential_IO is instantiated with a type that contains access values. This is dubious since if the file is read back in when the accessed value is no longer available (e.g. in a different program), the result may be meaningless or even dangerous if there is an attempt to use the value.
Reduced use of secondary stack
Variant records that have default discriminants and do not contain variable length arrays no longer require the use of the secondary stack when values of such types are returned by a function. This results in significantly improved efficiency.
Break during shared library elaboration
There was a limitation in the mips-irix debugger that made breakpoints ineffective during the short period where the initialization code of each shared library is executed (this phase occurs during the loading of the program, before it is executed). As a consequence, it was not possible to stop the debugger during thia automatic elaboration of Standalone Libraries. This limitation has been lifted.
New attribute Has_Access_Values
The attribute Has_Access_Values may be applied to any type or subtype. The result is True if the subtype is an access type, or is a composite which has a component (at any level) that is an access type. The most useful application is when the prefix is a generic formal type.
Jul 1st, 2004
Better message for bad representation clauses
When an illegal representation clause for a primitive type is given, the error message now indicates the minimum power of 2 that would be a legal size specification for the type.