| Version | Change log |
| Understand 7.1 Build 12 Nov 1, 2025 |
New Features: Compilers: Add support for '#pragma asm' to LAPIS CCU8 compiler support Plugins Changes: Add check MISRA23_13.13, CPP_L036: Character Function Misuse Add check MISRA23_17.9: Invalid _Noreturn Add check MISRA23_18.10, CPP_T064: Pointer to Variable-length Array Add check MISRA23_21.15, CPP_L037: Incompatible Pointers Add check MISRA23_21.6.3: Advanced memory management shall not be used Add check MISRA23_6.8.4: Member functions returning references to their object should be ref-qualified appropriately Add check: MISRA23_12.5, CPP_P016: Size of Array Parameter Add all non implemented MITRE CWE Top 25 rules as noop checks Add all non implemented SEI CERT C++ rules as noop checks Add check MISRA23_22.1: All resources obtained dynamically by means of Standard Library functions shall be explicitly released Add check MISRA23_18.5 Declarations should contain no more than two levels of pointer nesting Add check MISRA12_10.7, MISRA23_10.7, CPP_T063: Implicit Casts of Operations Add check MISRA12_16.7, MISRA23_16.7, CPP_CF009: Switch Boolean Bug Fixes: Omnibar: Fix clicking on the Omnibar x button doesn't work in 'Search File Contents' mode Language - C#: Fix bug where refresh parse could result in 'missing type' and 'missing namespace' errors for types used only as generic parameters. Plugins Changes: Fix bug in MISRA23_14.2 caused by incorrect check when comparing if ref was in bounds of curly braces causing false positives Fix false positives in MISRA12_13.4 |
| Understand 7.1 Build 12 Oct 23, 2025 |
New Features: VS Code Extension: Add button to regenerate last AI response Add support for CodeCheck baselines Add button to delete all ai chat messages Compilers: Update GHS V800/V850 compiler config and make suitable for strict C++ parsing Editor: Show parameter default values in function hover text Project: Show analysis progress in the global progress spinner in the upper right in addition to the normal status bar location in the bottom left Settings: Add the options for plugin metrics, configurable from project configuration Add a "Sync Selection" key binding option that can be set by the user, this will sync the selected entity across sync enabled windows Change the default value of the "Delayed Template Parsing" option to off Move "Enable AI" setting from Automation settings page to Data settings page Show a warning if AI was slow on Tools->Options->Data page Bug Fixes: Language - Visual Basic/C#: Fix crash parsing invalid code with recursive inheritance involving generic classes Fix invalid syntax error on some ternary operators with expressions containing null conditional indexers Language - Fortran: Fix API lexer hang on fixed format Fortran files containing C-style comments Fix crash on some macro definitions Editor: Fix for removed editor key bindings not staying removed. General: Fix bug with split workspace not getting restored correctly Import: Respect the -x flag for setting the language mode in compile command import Graphs: Fix dependency violation graph "cannot indirectly depend" graph sometimes showing references out of the "from" architecture twice Fix split workspace restoration of graphs on Windows Refactor: Fix ignoring a CodeCheck violation by annotation putting the annotation one line too high |
| Understand 7.1 Build 12 Oct 16, 2025 |
Bug Fixes: Fix deprecated plugins causing errors Fix AI summary generation poor performance on Windows Fix for Ada package "Calls & Called By" graph not showing children correctly Fix crash viewing history from database frozen at a Git Commit on Windows |
| Understand 7.1 Build 12 Oct 14, 2025 |
Global Search: Introducing Understand's Global Search Bar. Easily accessible from the toolbar, start typing to instantly see code entities, commands, plugins, settings, help guides, and more. VS Code Extension improvements: Install the Understand VS Code Extension to access AI overviews harnessing Understand's robust code insights, annotations that sync with Understand, graphs, and references for every entity. Increased CodeCheck performance: CodeCheck now has additional multi-threaded support decreasing the time required for each check. New Features: AI: Add ability to connect to AI Server on another machine Improve results for macros and namespaces Add ability to change AI model VS Code Extension: Add collapsible graph view in extension window Command Line(Und): Und AI: Add ability to select server Exclude "Assembly" from "settings -languages all" Compilers: Add support for IAR EWRX compiler Improve Keil Arm compiler config Metrics Browser: Add context menus for architectures and entities General: Bookmark window now has a toolbar Increase default Recent Files memory from 5 to 20 Icons have been updated with a new look Graphs: Data flow graphs no longer show "use macrodefine" references Import: Set macros associated with /MT[d] and /MD[d] flags in command line import Global Search: Add a Global Search Bar to the Understand toolbar The suggestions panel was removed. Now actions are suggested in Global Search under Commands. Plugins: Customize plugin open user plugins directly instead of creating a copy Plugin Manager install show page for installed plugin Show a popup when customizing a plugin Reports: Add assign references to program unit reports Settings: Add setting to enable/disable AI Key bindings have significantly changed. Users may need to re-add custom key bindings since the underlying setting names have changed in some cases, and some key bindings have been deleted and some new ones have been added. Options dialog (Tools-> |
| Understand 7.1 Build 12 Oct 9, 2025 |
Global Search: Introducing Understand's Global Search Bar. Easily accessible from the toolbar, start typing to instantly see code entities, commands, plugins, settings, help guides, and more. VS Code Extension improvements: Install the Understand VS Code Extension to access AI overviews harnessing Understand's robust code insights, annotations that sync with Understand, graphs, and references for every entity. Increased CodeCheck performance: CodeCheck now has additional multi-threaded support decreasing the time required for each check. New Features: AI: Add ability to connect to AI Server on another machine Improve results for macros and namespaces Add ability to change AI model VS Code Extension: Add collapsible graph view in extension window Command Line(Und): Und AI: Add ability to select server Exclude "Assembly" from "settings -languages all" Compilers: Add support for IAR EWRX compiler Improve Keil Arm compiler config Metrics Browser: Add context menus for architectures and entities General: Bookmark window now has a toolbar Increase default Recent Files memory from 5 to 20 Icons have been updated with a new look Graphs: Data flow graphs no longer show "use macrodefine" references Import: Set macros associated with /MT[d] and /MD[d] flags in command line import Global Search: Add a Global Search Bar to the Understand toolbar The suggestions panel was removed. Now actions are suggested in Global Search under Commands. Plugins: Customize plugin open user plugins directly instead of creating a copy Plugin Manager install show page for installed plugin Show a popup when customizing a plugin Reports: Add assign references to program unit reports Settings: Add setting to enable/disable AI Key bindings have significantly changed. Users may need to re-add custom key bindings since the underlying setting names have changed in some cases, and some key bindings have been deleted and some new ones have been added. Options dialog (Tools-> |
| Understand 7.1 Build 12 Jun 19, 2025 |
Graphs: Add the option to exclude standard library functions to C/C++ Call graphs. Import: Fix compile_command.json import of define flags ending in = and quoted define flags from "arguments" field Python API: Fix crash on entity name conversion for names that contain invalid UTF-8 Settings: Fix handling of missing named-root definitions on project load Language - Java: Fix Java comment collection to ignore generic parameters when associating comments Language - C++ (Strict): Set library for all declarations that come from system headers to "standard" Truncate initial values at 1024 bytes Show default language standards in C++ settings dialog Change Entity::parameters() api to show parameter names, when requested, for unresolved c++ functions Language - Pascal/Delphi: Fix syntax error parsing dfm files. Plugins: New plugin manager user interface with all new descriptive tags, more powerful search, solution pages, enable multiple plugins at once, and the ability to link to other plugins. |
| Understand 7.0 Build 12 May 20, 2025 |
Filter: Bring the CodeCheck file filter dialog back from behind the main window when requested again. CLI: Fix invalid project switch when passed relative argument to the -db flag Python API: Python plugins allow specifying range of integer options. Update Python API documentation for Graph options which in 7.1 allow all option methods. |
| Understand 7.0 Build 12 May 6, 2025 |
Filter: Bring the CodeCheck file filter dialog back from behind the main window when requested again. CLI: Fix invalid project switch when passed relative argument to the -db flag Python API: Python plugins allow specifying range of integer options. Update Python API documentation for Graph options which in 7.1 allow all option methods. |
| Understand 7.0 Build 12 May 1, 2025 |
CodeCheck: Remove background check violations from checks no longer run in the background on project open. Violations show check id as name when check name does not exist. Command Line(Und): Und analyze command don't run background checks when no files were analyzed. Compilers: Fix Tasking Tricore compiler definition to ignore non-standard asm() syntax Dependencies: Don't include c/c++ macros, type aliases, and typedefs in link time dependencies. Editor: Add missing syntax highlighting for C11/C23 and C++20 keywords General: Add an application font setting for the content font. Information Browser: Create Information Browser Call By trees for global objects and class members, based on the functions that access them Improve C++ Call & Call By trees in the Information Browser by integrating function pointer assignments and dereferences Python API: Fix 'understand' module import error in third-party Python interpreter VS Code Plugin: Add ability to change projects, make it easier to create plugins for other editors Add error message for locked database Improve inter-process communication by adding support for partial messages Language - C++ (Strict): Fix missing "typed" reference to types with the C11 _Atomic qualifier Language - Pascal/Delphi: Fixed potential parser crash in some array constructors. Added support for multiline string literals and the use of underscores as digit separators in numeric literals. |
| Understand 7.0 Build 12 Mar 1, 2025 |
CodeCheck: Edit Configuration Dialog update format of "Not Supported" tag. Inspections widget allow deleting multiple selected inspections from context menu. Und codecheck ignored count include violations that were ignored by an inspection baseline. Und support comparing inspections. Add -previous switch to und codecheck to give the inspection to compare against. When given, New_ and Fixed_ reports are also generated from the New_ and Fixed_ violations. Und report -codecheck now supports a second argument. To generate a report from a comparison of two inspections, use "und report -codecheck current.sarif previous.sarif ..." Update CodeCheck Documentation Report to include Checks By Language table. Installer: Fix missing plugins in Chinese build Main Window: Restore Annotations->Annotate menu on Windows/Linux Reports: Don't show CodeCheck reports in the Violation Browser menu when there is no CodeCheck license For HTML/PDF exports make sure strings used as filenames/anchors are alphanumeric/dash/underscore Language - C++ (Strict): Fix failure to record constructor call references for calls to std::make_shared that pass nullptr as one of the arguments Language - Fortran: Fixed possible crash in Fortran parsing Language - Assembly: Fix 1750A Assembly analyzer |