Visual Assist 2022.4 now available
News|by Leanne Bevan|19 December 2022
The fourth update to Visual Assist 2022 is here! This release updates some core Visual Assist (VA) behaviours adds a key C++ language feature and adds support for external configuration files. The release also continues initiatives on shader code from the previous release.
Parser changes
One of the highlights of this release is improvements to Visual Assist’s parser. The parser is core to how Visual Assist understands (and therefore suggests) code.
Numerous upgrades and fixes have been undertaken to make the parser smarter. This makes it recognize modern C++ code standards and practices, thereby minimising unwanted behavior as well. Here are some of them:
- Now distinguishes between std::get and std::tuple.
- Now understands parameters declared with “out int” in C#
- Fixed parser getting confused with case’1′ inside a switch statement.
Expect a steady stream of updates to parser behavior. If you encounter any bugs or errors submit a bug report on our community forums.
Support for C++17’s structured bindings
With the parser changes, VA 2022.4 also includes added support for C++17’s structured bindings. Structured bindings enable users to declare multiple variables initialised from a tuple or struct, simplifying and improving code readability.
With this change, variables that are contained within the binding are now recognized. For example, typing a dot will now be properly coloured and displayed on the navigation bar. You can also rename, search, and perform all the other actions you would expect from VA.
Continued HLSL improvement
The recently-added High Level Shading Language (HLSL) support has been augmented with coloring support for a variety of file types. This includes matrix types double4x2 and fixed3x4, and some base types such as min10float3. Because HLSL typically lacks corresponding header files, a more sophisticated understanding of code was required.
For those who are unaware, official HLSL support shipped with the previous release. HLSL and Unreal’s USF and USH files now integrate with VA’s core features.
Respecting VSCode excludes config files
Visual Assist now includes an option to consider configuration instructions similar to those used in VSCode settings .json files. This comes at the request of those who wish to skip unnecessary parsing when building solutions.
This means that you can open a file without needing to parse an entire project or a solution, saving precious time. This is a way to essentially tell Visual Studio and Visual Assist to “open a file but do not parse anything else apart from a specific part.”
Enable the option to detect and honor exclude settings via ticking a checkbox in Visual Assist options. Here is an example of a configuration file with exclude settings:
A new code inspection
This release also adds an inspection for bugprone-string-integer-assignment—a check based on LLVM/Clang-Tidy. It checks for easy-to-miss instances of assigning an integer to std::basic_string<CharT> (std::string, std::wstring, etc.).
Access other code inspections by accessing the following:
(If you are not seeing options, please remember to enable code inspections!)
- Quick Actions and Refactorings menu ( Shift + Alt + Q )
- VAssistX → Code Inspection (beta) → VA Code Inspection Results
Minor bug fixes
- Fixed comments getting duplicated in tooltips.
- Fixed issue where VA’s tooltips would not appear if IntelliSense was disabled
- Fixed an issue where the VA Outline tooltip spreads across two monitors with different DPI settings could cause the system to freeze.
- Fixed issue where the tomato icon may become black on hover in VS 2022
- Fixed issue where class method name that begins with “using” is missing from MIF.1
For more information about the changes in this release, head on over to the documentation.
Find out more
Grey Matter is a Whole Tomato Software reseller. Contact us for Visual Assist pricing and licensing advice.
We hope you find these changes useful. Happy coding!
Contact Grey Matter
If you have any questions or want some extra information, complete the form below and one of the team will be in touch ASAP. If you have a specific use case, please let us know and we'll help you find the right solution faster.
By submitting this form you are agreeing to our Privacy Policy and Website Terms of Use.
Leanne Bevan
Related News
Build Your Own Multi-Itinerary Optimisation Services
Learn how to build an itinerary optimisation service on Bing Maps and Azure Maps, using an open-source optimiser library and an array of distance matrix between a set of origins and destinations.
Grey Matter Christmas and New Year Opening Hours
We’re coming to the end of yet another year of enabling our customers to do what they do best through the range of software and services we have on offer! We hope you have a wonderful time celebrating with your...
Top Geospatial Tools to Leverage Location Intelligence in the New Year
The ultimate guide for the top geospatial tools and APIs from leading map providers like Azure Maps and HERE Technologies.
Sophos Firewall XG Series EOL and XGS Migration
The Sophos XG Series hardware appliances will reach their end of life (EOL) on 31 March 2025. Now is the time to upgrade to the XGS Series Sophos Firewall Sophos recommends that you migrate to the XGS series. Reasons to...