- Ada 2012
- Ada 2005 / 95 / 83
- Embedded Development
- Formal Methods
- Open Source
- Safety-Critical Development
- Static Analysis
Oct 4th, 2017
More precise side effects for unknown calls
CodePeer recognizes calls to system routines that have no other side effects than updating its out-mode parameters and uses this information to more precisely determine possible side effects of calls to such routines.
Oct 3rd, 2017
Dimensionality system accepts comparisons to literal
The GNAT dimensionality system now accepts, with a warning, the comparison between a dimensioned expression and a literal. For the special case of literal zero (0 or 0.0), no warning is issued.
Dimension specifications for integer types
When the root type of a dimensioned system is an integer type, the compiler now accepts dimension specifications that are other than nonnegative integers. Operations with fractional exponents on integer values are in general meaningless, but the dimensional analysis can still perform useful static checks on the code.
Oct 2nd, 2017
Switch to enable reporting of removed messages
When reporting messages with -output-msg (or when running codepeer_msg_reader directly), the new switch -show-removed causes any messages that have been removed from the current CodePeer run relative to the baseline run to be output and indicated as removed.
New gnatcheck rule Too_Many_Primitives
This rule flags any tagged type declaration that has more than N user-defined primitive operations (counting both inherited but not overridden and explicitly declared ones, but not counting predefined operators), where N is a rule parameter.