New Features


AI Code Search

Added AI Code Search, a new way to find relevant code by describing what you are looking for in plain language. Instead of needing to know the exact function, class, or file name, you can search for concepts such as “license validation logic,” “database connection setup,” or “file parsing errors,” and Understand will return the closest matching code results. This makes it easier to explore unfamiliar codebases, locate related functionality, and quickly find where important behavior is implemented.


To access AI Code Search, click the Global Search Bar at the top of Understand and select AI Code Search from the dropdown. It can also be opened from Search > AI Code Search. After typing your query, click an item in the AI Code Search window to view it in the Info Browser, or double-click it to open the source code. 





CodeCheck Checks

  • Add new PEP8_06: Imports
  • Add new MISRA12_1.2: Language extensions should not be used
  • Add new MISRA12_20.8: The controlling expression of a #if or #elif preprocessing directive shall evaluate to 0 or 1

Editor

  • Remember when transient file type is overridden and restore it when the document is reopened

Compilers

  • Add support for GHS V850 compiler extension 'asm(x)'.

Language - Fortran 2018

  • Add 'select rank' construct.
  • Add 'non_recursive' keyword.
  • Add support for variants of the 'import' statement.
  • Add support for specifying 'type' and 'external' with 'implicit none'.
  • Add support for intrinsics file

Rust

  • Add support for resolving extern entities with C entities
  • Set ABI freetext on foreign interface entities


Bug Fixes

Command Line - Und

  • Improve import file error reporting from und.

CodeCheck Checks

  • Fix MISRA08_8-4-2 false positive on template array parameters declared in headers
  • Fix false positive for MISRA08_2-10-5 caused by static identifiers in third-party / system headers

Language - Basic/C#

  • Fix incorrect spelling and visibilty desciptions in the 'short name' text on several C# and Basic entity kinds.

Language - Fortran

  • Fix bug where an 'unknown' variable created in a module context could interfere with symbol lookup.

Language - Java

  • Fix bugs where the long name of 'public sealed interface' was 'publicsealedinterface' and the long name of 'default sealed generic interface' was 'default sealedgeneric interface'.

Rust

  • Fix regression in creating use/call/etc. references to associated items


Known Issues

  • AI generation may incorrectly state it has been disabled due to insufficient specs
  • Some macros aren't defined when importing VS 2022 SLN and VCXPROJ
  • Print Preview may not function correctly