Skip to content

1.33.8

Latest

Choose a tag to compare

@sean-mcmanus sean-mcmanus released this 17 Aug 19:25
ca5da8d

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 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.77.0 or later (March 2023).
  • Windows 10+ (x64, arm64), macOS 10.13+, Linux (Ubuntu 16+, etc.).
    • Debugging is not supported on CentOS 7 or RHEL 7. The last supported version was 1.22.11: #13219.
    • The last supported version for Windows 7 and 8 was 1.30.5.

Changes

New Feature

  • Unification of tag parsing with the VS implementation. In particular, it's now done using multiple parallel cpptools-srv2 processes. PR #14426

Enhancements

  • Allow platform overrides in cppbuild tasks. #11601
  • Add the debuginfod launch option to the cppdbg debugger schema. #14458, #14460, PR #14471, PR #14506, MIEngine#1562
  • Add the ignoreRunWithoutDebuggingWarnings property to allow 'Run without debugging' warnings to be suppressed. #14515

Bug Fixes

  • Fix the wording for the #include errors detected message. #8227
  • Fix an incorrect invalid type conversion IntelliSense error. #11294
  • Fix include completion (with recursive includes) still suggesting headers from a deleted folder. #12636
  • Fix a spurious recursive includes (**) debug console log warning for paths merged from c_cpp_properties.json when C_Cpp.mergeConfigurations is enabled. #14125
  • Fix 'Find All References' dropping valid references when a template parameter type has a typedef alias in only one translation unit. #14344
  • Fix the remote process picker ps command not working with some shells. #14442
  • Fix a spurious IntelliSense error with class template argument deduction (CTAD). #14453, #14459, #14504
  • Add important to C_Cpp.doxygen.sectionTags. PR #14473
  • Update the minimum supported VS Code version to 1.77. PR #14502
  • Fix issues with the debugger launch.json schema. PR #14523
  • Fix [[no_unique_address]] empty-base layout sizeof being computed too large. #14524
  • Fix ${env:VAR} and ${env.VAR} not expanding to an empty string when the environment variable is unset, to match VS Code's behavior. PR #14535
  • Fix C/C++ debug data-tips on members of a dereferenced expression. PR #14540
    • Thanks for the contribution. @tieo
  • Fix Windows backslash paths being mangled when adding an SSH target. PR #14554
  • Fix 'Run C/C++ File' not running the program in PowerShell when terminal shell integration is unavailable. #14583
  • Fix the build tools walkthrough for Visual Studio 2026. PR #14589
  • Fix custom configurations being discarded when C_Cpp.mergeConfigurations is enabled and a provider supplies the file uri as a vscode.Uri. #14621
  • Fix a tag parser crash when a UTF-8 string literal is concatenated with a narrow string literal containing an invalid multibyte sequence.
  • Fix IntelliSense incorrectly resolving #include files through a symbolic link after the target directory was deleted from disk.
  • Fix potential browse database corruption when the same workspace is opened by multiple processes on Linux and macOS.
  • Fix crashes when reading files saved in certain multibyte encodings such as GB18030 or EUC-JP.
  • Fix empty database folders being created in every folder of a multi-root workspace.
  • Fix the C_Cpp.refactoring.includeHeader setting not honoring always.
  • Fix spurious IntelliSense error on std::variant brace-initialization.
  • Fix several potential deadlocks and data races in the language server.
  • Fix an incorrect file path in an error message on Windows.
  • Reduce memory usage to help avoid out-of-memory crashes.
  • Fix stale diagnostics after editing visible headers.
  • Fix several crashes in the recursive include cache.
  • Fix an incorrect #include casing error on Linux.
  • Various other fixes found internally.
  • Various localization updates.
  • Fix an IntelliSense crash.
  • Update dependencies.