A maintenance release is now available.
Consider updating if you are using Version 5.8.1 or older.
Improvements
-
Display Logic:
- do NOT mark case/default labels as coding (Mantis-19906)
but try to identify lines after that correctly
- added support for anonymous structs / unions (FR #21499)
- added limited support for compound literals (FR #21500)
new entry in ccbm-coding-requirements.txt for clarification:
(!) <23> No compound initializers without simple type cast
-
Coverage Merge:
ccbm_mco --html adds <A NAME... /> anchors for missed lines
(for –diff: reached lines); suppress this with --no-anchors
Anchors allow RTT-Plugin to navigate to these lines via Outline
(FR #19776)
In-document links to these anchors are also created, new option
--anchor-links N allows to configure this (FR#19869)
ccbm_mco --analysis accepts MD5:<id> file identification (FR#19584)
(the md5sum is computed with Unix-style NL line-breaks)
asts-ccbm-textual-merge-coverage allows option --no-unreach
(forwarded to ccbm_mco)
Bugfixes
-
Preprocessing (ccbm_prep):
- ensure marker is always first statement in
while() body (fixes #19502)
#if/#elif may be followed directly by parenthesis
better error message when #if/#endif do not match (fixes #20189)
- do-while processing of
do ... while(<expr>)<text>;
now preserves <text> verbatim (fixes #22468)
-
Coverage Merge (ccbm_mco):
ccbm_mco keeps [un]coding status of CCBM() markers
when merging,
except for preprocessing macros (fixes #19890)
ccbm_mco treats un-terminated BEGIN UNREACHABLE blocks
correctly (in TOTAL) and issues WARNING to user (#19794)
ccbm_coverage ignores control flow keywords if they
occur in comments or non-coding parts (fixes #19844)