New Features

CodeCheck Checks

  • Add new MISRA04_16.6: The number of arguments passed to a function shall match the number of parameters
  • Add new MISRA04_13.4: The controlling expression of a for statement shall not contain any objects of floating type
  • Add new MISRA04_12.5: The operands of a logical && or || shall be primary-expressions
  • Add new MISRA04_17.4: Array indexing shall be the only allowed form of pointer arithmetic
  • Add new MISRA04_19.16: Preprocessing directives shall be syntactically meaningful even when excluded by the preprocessor
  • Add new MISRA04_16.7: A pointer parameter in a function prototype should be declared as pointer to const if the pointer is not used to modify the addressed object
  • Add new MISRA04_14.2: All non-null statements shall either (a) have at least one side-effect however executed, or (b) cause control flow to change
  • Add new MISRA04_12.11: Evaluation of constant unsigned integer expressions should not lead to wrap-around
  • Add new MISRA04_12.9: The unary minus operator shall not be applied to an expression whose underlying type is unsigned

Editor

  • Set the cursor position to the requested line and column instead of the start of the line when visiting an anonymous function definition

Language - Fortran

  • Add support for Fortran 2018 SYNC TEAM statements.
  • Add Fortran 2018 intrinsics to the intrinsic definition file.

Licensing


Bug Fixes

List Browser

  • Fix crash when removing an expanded list

Command Line

  • "Und arch -generate" now ignores -name and -options when left blank

Graphs

  • Fix dependency graphs to allow expanding namespaces.
  • Fix bug where cluster graphs generated from the API always had filled clusters.

Import

  • Fix crash on malformed compile_commands.json entry

Language - Fortran

  • Fix bug where some uses of [...] caused syntax errors when the language version was set to Fortrain 2018.
  • Fix bug where some intrinsics were missing from the 2003 and 2008 intrinsics files. 

Upython

  • Fix crash on `ent.annotate()`


Known Issues

  • Understand may fail to find primitive aliases when importing a CSPROJ
  • AI generation may incorrectly state it has been disabled due to insufficient specs
  • AI generation may use more than 6 GB of RAM in some cases. Systems with 8 GB of RAM may encounter out-of-memory errors. If this occurs, disable AI generation under Tools > Options > Data
  • Some macros aren't defined when importing VS 2022 SLN and VCXPROJ
  • Print Preview may not function correctly