Releases: microsoft/vscode-cpptools
1.6.0-insiders
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code (don't double-click the .vsix or another app like VS might try to open it incorrectly).
Requirements
- VS Code 1.58.0 or later.
Changes
New Feature
- Added support for standard
.editorconfigentries when using vcFormat. #7920 - Debug Step Granularity for cppdbg MIEngine#1169
- Thank you for the contribution @Trass3r
Enhancements
- Debugger now runs on .NET 5 #7858
- When using the
Defaultsetting forC_Cpp.formatting, vcFormat will now be selected if a.editorconfigfile is found with vcFormat entries and no.clang-formatfile was found with nearer proximity to the source file. #7929
Bug Fixes
- Fix incorrect sizeof for packed structs (gcc/clang) #5267
- Fix designated initializers not working at file scope. #6316
- Fix an IntelliSense crash on template code. #7349
- Rank existence of a custom configuration higher than filename similarity and path proximity, when choosing a TU source for a header #7396
- Fix an IntelliSense crash when the display language is set to Italian. #7685
- Enable the C++ status bar items to be selectively disabled. #7700
- Fix an issue causing incorrect color selection for semantic tokens. #7773
- Fix some cl.exe and clang installations not being detected. #7767 #7795 #7800
- Fix an issue with recursive includes not found. #7783
- Fix an issue with code folding of single-line blocks. #7809
- Fix a typo in a localized string. #7823
- Add open file parsing status when hovering over the database icon. PR #7831
- Fix an issue with IntelliSense flame icon getting stuck on. #7838
- Fix an issue with character position after include completion. #7856
- Fix wrong version of clang-format being used in multi-root workspaces. #7870
- Fix issue with setting of MS extensions when
-fms-extensionsis used. #7886 - Fix an issue with support detection on Android. #7906
- Fix a bug with handling of
"C_Cpp.vcFormat.newLine.beforeOpenBrace.block": "newLine". #7926 - Fix Disassembly view is blank on linux #7960
Known Issues
1.5.1
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code (don't double-click the .vsix or another app like VS might try to open it incorrectly).
Requirements
- VS Code 1.53.0 or later.
Changes
- Fix issue "cppvsdbg Debugging becomes no-op between 1.4.1 and 1.5.0". #7808
Known Issues
- None so far.
1.5.0
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code (don't double-click the .vsix or another app like VS might try to open it incorrectly).
Requirements
- VS Code 1.53.0 or later.
Changes
New Feature
Enhancements
- Add auto-detection of clang compilers on Windows. #6718
- Stop adding .cu files to
files.associations(switch to using setTextDocumentLanguage). #7359 - Add "Symbol Options" for CppVsdbg to configure symbol settings PR #7680
- Update CppVsdbg to use newer CppEE and msdia.
Bug Fixes
- Fix switch header/source not checking
files.exclude. #4429 - Fix code folding causing
} else iflines to be hidden. #5521 - Add abort handling to recursive includes directory iteration. #6461
- Fix include completion with recursive includes in header files. #6842
- Add the get-task-allow entitlement to macOS binaries to enable call stacks to be obtained when SIP is enabled. #7412
- Fix Find All References reporting certain references in headers as inactive. #7609
- Fix IntelliSense process crash and tag parser failure with columns > 65535. #7621
- Fix incorrect localization translations.
- Fix
autocompleteAddParenthesesfor some template argument deduction cases. #7626 - Fix some incorrect IntelliSense errors. #6639, #7630
- Change references of "OS X" to "macOS".
- Tyler Davis (@TylerADavis) PR #7636
- Prevent the root path from being added to the
browse.path. #7648 - Fix a configuration squiggle when
${workspaceFolder}is used withcompilerPath. #7649 - Fix an issue causing editorConfig not to be used or cached. PR #7666
- Fix document symbols nesting with templates. #7673
- Fix include paths not being found when the paths start with /D or /I. #7701, #7757
- Fix Find All References on a global variable giving incorrect references to local variables. #7702
- Fix
vcFormatnot working near the end of the file with UTF-8 characters > 1 byte. #7704 - Fix a configuration squiggle for a recursively resolved
forcedInclude. PR #7722 - Fix
Build and Debug Active Filefor certain file extensions (.cu, .cp, etc.). - Fix
browse.pathbeing incorrect if an invalidcompileCommandsis set. #7737 - Fix an incorrect error message when
C_Cpp.errorSquigglesis"Enabled". #7744 - Fix compiler querying sometimes not working with Cygwin. #7751
- Fix a duplicate IntelliSense update when a new C/C++ file is opened and after switching from a non-C/C++ file and back.
- Fix a potential IntelliSense process crash on shutdown.
Known Issues
- None so far.
1.5.0-insiders3 (release candidate)
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix ("extensions.autoUpdate" needs to be true too). Or if that doesn't work, manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code (don't double click the vsix).
Requirements
- VS Code 1.53.0 or later.
Changes
Enhancement
- Add auto-detection of clang compilers on Windows (and different versions of cl.exe). #6718
- Stop adding .cu files to
files.associations(switch to using setTextDocumentLanguage). #7359
Bug Fixes
- Add abort handling to recursive includes directory iteration. #6461
- Fix include completion with recursive includes in header files. #6842
- Add the get-task-allow entitlement to macOS binaries to enable call stacks to be obtained when SIP is enabled. #7412
- Fix
browse.pathbeing incorrect if an invalidcompileCommandsis set. #7737 - Fix incorrect error message when
C_Cpp.errorSquigglesis"Enabled". #7744 - Fix compiler querying sometimes not working with Cygwin. #7751
Known Issues
- Compilers under
C:\Program Files\LLVM\binaren't auto-detected on Windows. #7767
1.5.0-insiders2
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix ("extensions.autoUpdate" needs to be true too). Or if that doesn't work, manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code (don't double click the vsix).
Requirements
- VS Code 1.53.0 or later.
Changes
New Feature
- Add "Inline macro" code action. #4183
Bug Fixes
- Fix code folding causing
} else iflines to be hidden. #5521 - Fix Find All References on a global variable giving incorrect references to local variables. #7702
- Fix
vcFormatnot working near the end of the file with UTF-8 characters > 1 byte. #7704 - Fix configuration squiggle on a recursively resolved
forcedInclude. PR #7722 - Fix
Build and Debug Active Filefor certain file extensions (.cu, .cp, etc.). - Fix an infinite loop when importing a module with a template.
Known Issues
- None so far.
1.5.0-insiders
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix ("extensions.autoUpdate" needs to be true too). Or if that doesn't work, manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code (don't double click the vsix).
Requirements
- VS Code 1.53.0 or later.
Changes
Enhancements
- Add "Symbol Options" for CppVsdbg to configure symbol settings PR #7680
- Update CppVsdbg to use newer CppEE and msdia.
Bug Fixes
- Fix switch header/source not checking
files.exclude. #4429 - Fix Find All References reporting certain references in headers as inactive. #7609
- Fix IntelliSense process crash and tag parser failure with columns > 65535. #7621
- Fix incorrect localization translations.
- Fix
autocompleteAddParenthesesfor some template argument deduction cases. #7626 - Fix some incorrect IntelliSense errors. #6639, #7630
- Change references of "OS X" to "macOS".
- Tyler Davis (@TylerADavis) PR #7636
- Prevent the root path from being added to the
browse.path. #7648 - Fix configuration squiggle when
${workspaceFolder}is used withcompilerPath. #7649 - Fix an issue causing editorConfig not to be used or cached. PR #7666
- Fix document symbols nesting with templates. #7673
- Fix a duplicate IntelliSense update when a new C/C++ file is opened and after switching from a non-C/C++ file and back.
- Fix a potential IntelliSense process crash on shutdown.
Known Issues
- None so far.
1.4.1
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code (don't double-click the .vsix or another app like VS might try to open it incorrectly).
Requirements
- VS Code 1.53.0 or later.
Changes
Bug Fix
- Fix the configuration UI sometimes not populating initially with VS Code 1.56 or later. #7641
Known Issues
- None so far.
1.4.0
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code (don't double-click the .vsix or another app like VS might try to open it incorrectly).
Requirements
- VS Code 1.53.0 or later.
Changes
New Features
- Add a C++ walkthrough to the "Getting Started" page. #7273
- Note: VS Code may only make this available to a subset of users while they continue working on the feature.
Enhancements
- Update to clang-format 12. #6434
- Add
privateorprotectedscope labels to class symbols. #7120 - Fix file:line path for $FILEPOS #7193
- Add
stopAtConnectandhardwareBreakpointslaunch options PR #7449stopAtConnectstops the debugger on connection to a remote target PR MIEngine#1109hardwareBreakpointscontrols usage and number of remote hardware breakpoints PR MIEngine#1128
- Add support for loading Concord extensions to the cppvsdbg debug adapter (see documentation for more information)
- Add support for exception conditions to cppvsdbg (see documentation for more information)
Bug Fixes
- Fix an incorrect IntelliSense error with object initialization. #3212
- Fix IntelliSense errors with designated initializers. #3491, #5500
- Fix IntelliSense configuration with cl.exe compiler args
/external:I,/Zc:preprocessor, and others. #4980, #6531, #7259 - Switch to showing no document symbols instead of random symbols for
files.exclude'd documents. #5142 - Fix macros getting undefined when duplicate
#includeare used. #5182, #7270 - Fix provider failed error logging. #5487
- Fix an IntelliSense crash with
#pragma GCC target. #6698, #7377 - Fix bitness detection for compilers targeting esp32. #7034
- Fix -idirafter directories being included too early. #7129
- Fix issue with the cpptools process lingering when no longer needed. #7262
- Filter out C++ std when querying the compiler as C (and vice versa). #7269
- Fix
files.excludeending with/folder/**not excluding/folder. #7331 - Fix VS Code UI freezing when hovering over very large literals. #7334, #7577
- Fix clang-format formatting bug when new lines are removed. #7360
- Change default cwd in launch.json to
${fileDirname}. #7362- Syed Ahmad (@HackintoshwithUbuntu) PR #7363
- Fix the compile commands entry not being used when -Werror is used. #7388
- Fix some potential race conditions during vsix installation. #7405
- Fix completion at the end of a file. #7472
- Fix completion of constructors. #7505
- Fix typos.
- Fix an IntelliSense crash with the arrow library. #7518
- Fix the configuration UI randomly being blank (more frequently when remote). #7523
- Fix IntelliSense mode switching from
linuxtomacosif__unix__is defined but__linux__is not. #7525 - Fix enabling of the
ms_extensionsflag for clang on Windows. #7529 - Fix
autocompleteAddParentheseswith no argument const/non-const overloads and deduction guides. #7540, #7541 - Fix the browse configuration not being preserved when the configuration provider is auto-detected. #7542
- Fix clang-format failure on macOS 10.13 or older. #7561
- Fix an IntelliSense crash with std::ranges::unique. #7576
- Prevent 'Configuration Warnings' output when a custom configuration provider omits optional fields.
- Prevent 'Configuration Warnings' caused by corrections to auto-detected default configuration values.
- Reduce IntelliSense memory and CPU usage in certain scenarios (e.g. large files).
- Fix a crash on Linux with a
/**includePath.
Known Issues
- None so far.
1.4.0-insiders3 (release candidate)
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix ("extensions.autoUpdate" needs to be true too). Or if that doesn't work, manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code (don't double click the vsix).
Requirements
- VS Code 1.53.0 or later.
Changes
Enhancements
- Add
privateorprotectedscope labels to class symbols. #7120 - Improvements to the C++ "Getting Started" walkthrough. PR #7554
Bug Fixes
- Switch to showing no document symbols instead of random symbols for
files.exclude'd documents. #5142 - Fix bitness detection for compilers targeting esp32. #7034
- Fix issue with cpptools process lingering when no longer needed. #7262
- Fix typos.
- Fix enabling of the
ms_extensionsflag for clang on Windows. #7529 - Fix
autocompleteAddParentheseswith no argument const/non-const overloads and deduction guides. #7540, #7541 - Fix the browse configuration not being preserved when the configuration provider is auto-detected. #7542
- Fix clang-format failure on macOS 10.13 or older. #7561
- Fix the walkthrough for remote targets. PR #7582
- Prevent 'Configuration Warnings' output when a custom configuration provider omits optional fields.
- Prevent 'Configuration Warnings' caused by corrections to auto-detected default configuration values.
Known Issues
- None so far.
1.4.0-insiders2
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix ("extensions.autoUpdate" needs to be true too). Or if that doesn't work, manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code (don't double click the vsix).
Requirements
- VS Code 1.53.0 or later.
Changes
New Features
- Add a C++ walkthrough to the "Getting Started" page. #7273
- Currently, it's only usable when
"workbench.welcomePage.experimental.extensionContributions": trueis set with VS Code Insiders.
- Currently, it's only usable when
Bug Fixes
- Fix an incorrect IntelliSense error with object initialization. #3212
- Fix macros getting undefined when duplicate
#includeare used. #5182, #7270 - Fix IntelliSense crash with
#pragma GCC target. #6698, #7377 - Fix completion at the end of a file. #7472
- Fix completion of constructors. #7505
- Fix IntelliSense crash with the arrow library. #7518
- Fix the configuration UI randomly being blank (more frequently when remote). #7523
- Fix IntelliSense mode switching from
linuxtomacosif__unix__is defined but__linux__is not. #7525 - Reduce IntelliSense memory and CPU usage in certain scenarios.
Known Issues
- None so far.