- Ada 2012
- Ada 2005 / 95 / 83
- Embedded Development
- Formal Methods
- Open Source
- Safety-Critical Development
- Static Analysis
GNAAMP breakpoints on procedure end line
For the AAMP target, the compiler now generates LINE mark information for implicit return statements that immediately precede the end of a procedure to indicate the "end" line of the procedure. This allows a breakpoint to be set on the "end" line that will be triggered when the procedure reaches its end.
Improved dead code checking for blocks
The circuitry for detecting unreachable code has been enhanced so that it works for the case of a block where all exit paths from the block (including any exception handlers) terminate with an unconditional transfer of control. In such cases, the statement after the block is unreachable, and this is now properly detected and generates a warning message.
Sep 20th, 2004
Avoid possible reserved word Interface
It seems possible, perhaps likely, that INTERFACE will become a new reserved word in the next Ada standard. To avoid being forced to make an incompatible change at a later point, we have decided to rename components in GNAT.Sockets.Option_Type at this point: Interface was renamed to Local_Interface, and Multiaddr was renamed to Multicast_Address. That means that you may need to modify programs explicitly mentioning these components. We recommend that at the same time you remove any other use of this identifier from your programs.
Sep 17th, 2004
Packed arrays no longer initialized
The compiler no longer generates initialization of small packed array variables to zero bits. This avoids the unexpected behavior of such variables in contexts where the initialization is visible (notably for address clauses and for pragma Import).
Sep 2nd, 2004
New gnatdll’s option to generate map file
A new gnatdll option (-m) has been implemented to generate a map file.
AI-305 pragma Detect_Blocking
This configuration pragma forces the detection of potentially blocking operations in a protected operation. Program_Error is raised in this case.