Ada
- Made changes to put missing compilation unit and multiple units with the same name warnings inside a file context so they will be saved with violations.
AI
- Fix AI Overview background generation setting update when settings is changed from Tools->options.
- Add ability to specify external server when using Ollama and LM Studio
Annotations
- Annotations add ability to use a selected line range from the Annotation Viewer and Move Annotations dialog.
Bookmarks
- Bookmark shortcut now always opens the bookmark window instead of toggling
Graphs
- Add pictures to Mermaid Graph interactive report descriptions.
- Input Output Diagram update to handle "switch" like "if".
Help
- Update Help Menu actions order and add actions for SciTools Blog and SciTools YouTube Channel.
Language - C++ (Strict)
- Fix kind of references on the right hand side of binary operators used in return statements
Metrics
- Add metrics for object uses, sets, and modifications.
Project Config
- Project Configuration Dialog user interface updates
CodeCheck Checks
- Add check MISRA23_1.5, CPP_DD030: Storage Class Specifiers Not At Beginning
- Add check MISRA23_22.12, CPP_L043: Thread Data Misuse
- Add check MISRA23_22.15: Thread synchronization objects and thread-specific storage pointers shall not be destroyed
- Add check MISRA23_22.16: All mutex objects locked by a thread shall be explicitly unlocked by the same thread
- Add check MISRA23_22.18: Non-recursive mutexes shall not be recursively locked
- Add check MISRA23_22.19, CPP_V040: Mutexes with One Condition Variable
- Add check MISRA23_22.3: The same file shall not be open for read and write access at the same time on different streams
- Add check MISRA23_22.7, CPP_L042: EOF Macro Misuse
- Add check MISRA23_23.3, CPP_T065: Unconditional Generic
- Add check MISRA23_23.7, CPP_T067: Generic Expression Not Always Evaluated Once
- Add check MISRA23_23.8, CPP_T066: Generic Default Not First or Last
- Add check: MISRA23_4.6.1
- Add no-op check MISRA23_23.4 A generic association shall list an appropriate type
- Add no-op checks MISRA23_23.5, MISRA23_23.6
- Add NO-OP checks: MISRA23_0.3.1, MISRA23_0.3.2, MISRA23_18.5.1
- Added new MISRA23_DIR_4.14: The validity of values received from external sources shall be checked
- Fix bug in MISRA23_5.13.4
- Fixed: false positives due to a bug that caused the loop counter to be flagged in its modification in the 3rd clause in MISRA23_14.2
- Fixed: False positives in MISRA23_14.2
- Fixed: False positives in MISRA23_9.2 with Array element assignments #4444
- Fixed: False positives with macros in MISRA12_11.4
- Fixed: false positives with some unresolved function calls
Reports
- Fix Interactive Report "Copy API Command" for reports with "\" in the name on Windows.
Plugins
- Shared Tasks: Fix interactive report options
- Shared Tasks: fix task names in CSV file
- Add graph: "Calls && Called By - Internal with Objects"
- Add graph "Data Sequence Diagram" to show data interactions within a function.
- Add graph "Input Output Diagram" to show how a function's inputs affect a function's outputs.
Known Issues
- The Project Home Page may show an incorrect Generated date/time
- Nodelock license fails to validate running API on Rocky 8.10
- Some macros aren't defined when importing VS 2022 SLN and VCXPROJ
- MacOS Sonoma and later cannot connect to the Icarus server
- Print Preview may not function correctly