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.67.0 or later (April 2022).
- Windows 7+ (x64, arm64), macOS 10.12+, Linux (Ubuntu 16+, etc.).
Changes
Enhancements
- Modifications to the snippet completions to more closely match the snippets provided by TypeScript. #4482
- Enable setting multiple compile commands. #7029
- Changes to how paths are internally canonicalized on Linux and macOS, avoiding file system access to improve performance and delay resolution of symbolic links. #12924
- Add handling of
-fno-char8_t
and-fchar8_t
compiler arguments. #12968 - Add support for providing well-known compiler argument information to Copilot Completions. PR #12979
- Fixed unnecessary cancellation of Copilot context requests. PR #12988
- Add support for passing an additional parameter to
C_Cpp.ConfigurationSelect
command. PR #12993- Thank you for the contribution. @adrianstephens
- Update clang path setting descriptions. PR #13071
- Update clang-format and clang-tidy from 19.1.2 to 19.1.7.
- IntelliSense parser updates.
Bug Fixes
- Fix a perf regression in hover operation by using cached lexer line states. #3126
- Fix
compile_commands.json
no longer being used if the containing folder is deleted and recreated. #7030 - Increase clang-format timeout from 10 seconds to 30 seconds. #10213
- Fix
C_Cpp.enhancedColorization
not taking effect after it's changed. #10565 - Fix changes to
files.encoding
not triggering a database reset. #10892 - Fix parameter hints interpreting
*
in a comment as markdown. #11082 - Fix an incorrect IntelliSense error when using
std::unique_ptr
. #11979 - Fix an incorrect IntelliSense error with designated initializers. #12239
- Fix handling of
koi8ru
andkoi8t
file encodings on Windows. #12272 - Fix description of
C_Cpp.preferredPathSeparator
. #12597 - Fix the IntelliSense process launching when it's disabled and the Copilot extension is used. #12750, #13058
- Fix casing of path in include completion tooltip on Windows. #12895
- Fix a performance issue where some LSP requests would delay other LSP requests. #12905
- Fix some localization issues. #12909, #13090
- Fix pattern matching of sections in
.editorConfig
files. #12933 - Fix handling of relative paths passed to cl.exe
/reference
argument. #12944 - Fix a leak of compile command file watchers. #12946
- Fix a compile commands fallback logic issue. #12947
- Fix an issue in which a
didOpen
event was processed before the language client was fully started. #12954 - Fix the IntelliSense mode being
macos
instead ofwindows
when_WIN32
is defined on macOS. #13016 - Fix IntelliSense bugs when using non-UTF8 file encodings. #13028, #13044
- Fix an incorrect translation for "binary operator". #13048
- Fix the "references may be missing" logging pane being shown when the
C_Cpp.loggingLevel
isError
orNone
. #13066 - Fix
C_Cpp.default.compilerPath
not using theC_Cpp.preferredPathSeparator
setting when generated from the 'Select IntelliSense Configuration' command. #13083 - Fix a couple bugs with
.editorConfig
handling. PR #13140 - Fix a bug when processing a file with invalid multi-byte sequences. #13150
- Fix call hierarchy calls from. #13200
- Fix IntelliSense issues related to large header files (>32K) and encodings other than UTF-8.
- Update vsdbg from 17.12.10729.1 to 17.13.20115.1.
- Other internal fixes.
- Fix some deadlocks.
- Fix some crashes.