Skip to content

1.22.9

Compare
Choose a tag to compare
@sean-mcmanus sean-mcmanus released this 15 Oct 00:05
· 6 commits to release since this release
db6e0cb

Instructions

The extension can be obtained by one of the methods below:

  • Install the "C/C++" or "C/C++ Extension Pack" extension published by Microsoft from the Extensions view in VS Code.
  • Download a vsix that matches your OS from the "Download" dropdown in the "Version History" tab section on the Marketplace website, and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).
  • Download a vsix that matches your OS from the Assets section below (and install it via the method mentioned above). The previous download methods have the vsix signatures verified by the Marketplace, but for this method, you can do the verification by downloading the matching manifest and signature.p7s file and running npx @vscode/vsce@latest verify-signature -i <.vsix> -m <.signature.manifest> -s <.signature.p7s> vscode-vsce#1044.

Requirements

  • VS Code 1.67.0 or later (April 2022).
  • Windows 7+ (x64, arm64), macOS 10.12+, Linux (Ubuntu 16+, etc.).

Changes

Performance Improvements

  • Initialization performance improvements. #12030
    • Some processing is parallelized and started earlier (populating the filename cache, discovering files). #11954, #12169
    • Some compiler configuration queries are cached in the database, and processing of compile_commands.json was improved. #10029, #12078
  • Performance improvements related to how custom configurations are processed. #9003, #12632
  • Improve the implementation of file buffers to reduce memory usage.
  • Performance improvements related to LSP request processing.

Enhancements

  • Add modified C_Cpp settings to the C/C++: Log Diagnostics output. #11700
  • Add better validation for settings. #12371
  • Change the default C/C++ "editor.stickyScroll.defaultModel" to "foldingProviderModel". #12483
  • Remove the C_Cpp.intelliSenseEngineFallback setting. #12596
  • Enable C/C++: Log Diagnostics without a C/C++ file being active. #12634
  • Add "Additional Tracked Settings" to the C/C++: Log Diagnostics output. PR #12635
  • Add support for providing additional context information to Copilot Chat. PR #12685
    • Currently, it requires "C_Cpp.experimentalFeatures": "enabled" and typing #cpp in the chat.
  • The .vsix and .js files are now signed. #12725, #12744
  • Add the database path to the C/C++: Log Diagnostics output.
  • Various IntelliSense parsing updates/fixes.

Bug Fixes

  • Fix the compiler selection control not keeping the list in sync with the contents of the textbox. #7427
  • Fix a string localization issue. #7824
  • Fix an issue with the 'Add #include' code action incorrectly using a relative path for a system include. #12010
  • Fix an issue with lingering IntelliSense squiggles after an edit. #12175
  • Fix hover over static constexpr variables sometimes not working. #12284
  • Fix completion not giving results in several scenarios. #12412
  • Stop logging duplicate compiler path messages. #12445
  • Fix an issue where a file is incorrectly processed as C instead of C++. #12466
  • Fix an issue with missing database symbols after a Rename operation. #12480
  • Fix include path ordering being incorrect if there is a duplicate. #12525
  • Fix a WebAssembly "Out of Memory" error. #12529
  • Fix an error message not being shown if the connection failed with remote attach debugging. #12547
  • Fix -I not being used if -iquote is also used for the same path. #12551
  • Fix issues with relative paths on nvcc (CUDA) command lines not being handled correctly. #12553
  • Fix a crash on shutdown on macOS with a verbose logging level. #12567
  • Fix a random crash when a child process is created. #12585
  • Work around IntelliSense issues with clang 18 due to size_t not being defined. #12618
  • Fix the /FU flag not working for C++/CLI. #12641
  • Fix a crash in find_existing_intellisense_client. #12666
  • Fix a rare crash on macOS related to get_memory_usage. #12667
  • Fix an issue with 'Extract to Function' formatting. #12677
  • Fix an issue with duplicate tag parsing occurring after a Rename operation. #12728
  • Fix an issue preventing use of a full command line in compilerPath. PR #12774
  • Fix an issue with clang-format/tidy version checks for some builds. #12806
  • Fix an issue causing unnecessary TU updates for files opened during a Rename operation, when "files.refactoring.autoSave": false is used.
  • Fix some issues with recursive includes handling of symbolic links, multi-root, exclusion changes, and file/folder deletion.
  • Fix unnecessary IntelliSense resetting when a new file or folder was created.
  • Fix an infinite loop on shutdown after changing the selected settings.
  • Fix accumulation of stale signature help and completion requests.
  • Fix handling of the compiler-binddir compiler argument.
  • Fix a random crash during IntelliSense creation.
  • Fix some bugs with include completion.