Releases: microsoft/vscode-cpptools
1.14.4
Instructions
Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
Enhancements
- Add
c23andc2xsupport for clang and gcc modes. #7471 - Filter out clang-tidy
#pragma once in main filewarnings. #10539 - Auto-configure
configurationProvidereven ifdefault.compilerPathis set. PR #10607
Bug Fixes
- Fix
--in args making compiler querying fail. #10529 - Fix every .C file being opened in a compile_commands.json if it's build for C++. #10540
- Fix
-std=c++not being used in compile_commands.json for .C files. #10541 - Fix a crash when an error occurs in a forced include. #10598
- Fix the configuration provider browse cache not getting cleared. PR #10608
- Fix a bug that could cause IntelliSense to randomly stop updating.
- Fix some random failures that could happen during database deletion.
- Fix some random crashes on shutdown.
Known Issues
1.14.3
Instructions
Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
New Behavior
- The extension does not automatically query compilers that it cannot implicitly trust when configuring IntelliSense. This may impact the extension's ability to locate system headers. If the compiler you want us to emulate is not in the $PATH and you accidentally dismissed the notification asking you to confirm the compiler we found, run the
C/C++: Select Default Compilercommand to instruct the extension which compiler to emulate for IntelliSense.
New Features
- Add recursive macro expansion on hover. #3579
- Move status bar items to the language status UI. #8405
- This may not be enabled for all users unless
C_Cpp.experimentalFeaturesistrue.
- This may not be enabled for all users unless
- Add the 'Select Default Compiler' command that lets you choose a default compiler to configure IntelliSense. #10027
Enhancements
- Exclude rename results external to the workspace. #9235
- Add error messages for Create Declaration / Definition. #10163
- Add support for LLVM-based Intel C/C++ compilers. #10218
- SSH output improvements. PR #10292
- Reorder commands in the code action context menu. #10400
- Add Ada to supported languages for debugging. #10475
- Anthony Leonardo Gracio (@AnthonyLeonardoGracio) PR #10476
Bug Fixes
- Fix usage of relative paths in IntelliSense configuration settings with multi-root workspaces. #4983
- Fix infinite recursion in scout_parser. #8898
- Fix an IntelliSense crash with the seqan3 library. #8956
- Fix looping between C and C++. #9689
- Fix Doxygen comments for the function signature being autogenerated when typing inside a function. #9742
- Show a reload prompt after
C_Cpp.hoveris changed. #10076 - Fix function inlay hints not working with
std::string_literalarguments. #10078 - Fix IntelliSense completion for
std::stringwith?:andstring(). #10103 - Fix semantic colorization not working in a certain case. #10105
- Fix IntelliSense completion not working inside constructor calls that are incomplete. #10111
- Fix changes to the enclosing type not being taken into account after "Create Declaration / Definition" is used once. #10162
- Fix "False positive expression must have a constant value with __builtin_choose_expr in _Static_assert". #10168
- Fix Create Declaration / Definition with an anonymous namespace. #10189
- Fix file exclusions not being applied to the first directory found for each browse.path entry. #10205
- Fix IntelliSense mode auto-detection for VS 2015 compiler paths. #10207
- Fix clang-cl 15 querying with /WX. #10221
- Fix an incorrect IntelliSense error with
std::bind, c++17, and windows-msvc-arm64 mode. #10304 - Fix vcFormat when using lambda functions. #10326
- Fix IntelliSense crash in field_for_lambda_capture. #10359
- Fix for cpptools getting shutdown after waking up from sleep. #10362
- Fix an IntelliSense crash when using the French language pack. #10374
- Fix the process id picker only showing part of the process on a remote machine. #10379
- Fix temp files generating at the incorrect path. #10386
- Fix a crash in extractArgs. PR #10394
- Fix a bug with settings changes not being handled correctly for multiroot. PR #10458
Known Issues
- Nothing major so far.
1.14.2 (pre-release, release candidate)
Instructions
Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
Enhancements
- Add error messages for Create Declaration / Definition. #10163
- Follow up changes to the new status UI. #10413
- Add Ada to supported languages for debugging. #10475
- Anthony Leonardo Gracio (@AnthonyLeonardoGracio) PR #10476
Bug Fixes
- Show a reload prompt after
C_Cpp.hoveris changed. #10076 - Fix a bug with settings changes not being handled correctly for multiroot. PR #10458
- Fix a crash with empty PATH entries on Linux/Mac.
Known Issues
- None so far.
1.14.1 (pre-release)
Instructions
Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
New Features
- Add recursive macro expansion on hover. #3579
- Move status bar items to the language status UI. #8405
- Add the Select Default Compiler command that lets you choose a default compiler to configure IntelliSense. #10027
Enhancements
- Exclude rename results external to the workspace. #9235
- Reorder commands in the code action context menu. #10400
Bug Fixes
- Fix Create Declaration / Definition with an anonymous namespace. #10189
- Potential fix for cpptools getting shutdown after waking up from sleep. #10362
- Fix the process id picker only showing part of the process on a remote machine. #10379
- Fix temp files generating at the incorrect path. #10386
- Fix a crash in extractArgs. PR #10394
Known Issues
- Changes to settings (e.g.
C_Cpp.default.compilerPath) may not get updated in the non-active workspace folders. PR #10458
1.14.0 (pre-release)
Instructions
Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
Enhancements
Bug Fixes
- Fix usage of relative paths in IntelliSense configuration settings with multi-root workspaces. #4983
- Fix infinite recursion in scout_parser. #8898
- Fix an IntelliSense crash with the seqan3 library. #8956
- Fix looping between C and C++. #9689
- Fix Doxygen comments for the function signature being autogenerated when typing inside a function. #9742
- Fix function inlay hints not working with
std::string_literalarguments. #10078 - Fix IntelliSense completion for
std::stringwith?:andstring(). #10103 - Fix semantic colorization not working in a certain case. #10105
- Fix IntelliSense completion not working inside constuctor calls that are incomplete. #10111
- Fix changes to the enclosing type not being taken into account after "Create Declaration / Definition" is used once. #10162
- Fix "False positive expression must have a constant value with __builtin_choose_expr in _Static_assert". #10168
- Fix file exclusions not being applied to the first directory found for each browse.path entry. #10205
- Fix IntelliSense mode auto-detection for VS 2015 compiler paths. #10207
- Fix clang-cl 15 querying with /WX. #10221
- Fix an incorrect IntelliSense error with
std::bind, c++17, and windows-msvc-arm64 mode. #10304 - Fix vcFormat when using lambda functions. #10326
- Fix IntelliSense crash in field_for_lambda_capture. #10359
Known Issues
- None so far.
1.13.9
Instructions
Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
Bug Fix
- Fix clang-format and clang-tidy not working for macOS 11 arm64. #10282
1.13.8
Instructions
Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
Bug Fixes
- Fix tag parser failure on machines with multiple extension users. #10224
- Fix a
--using_directoryIntelliSense error if LIBPATH is defined with non-msvc IntelliSense modes. #10249 - Fix a crash when the configuration name is missing. #10251
- Fix clang-format and clang-tidy not working for macOS 11 arm64. #10282
1.13.7
Instructions
Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
Bug Fix
- Fix
files.associationsnot working. #10244
1.13.6
Instructions
Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
New Features
- Add the ability to generate definitions from declarations and vice versa. #664
- Add SSH Target Selector. PR #9760
- Add rsync support in deploySteps. PR #9808
Enhancements
- Add
C_Cpp.caseSensitiveFileSupportfor enabling case sensitive file handling on Windows. #1994 - Add sections to settings. #8237
- Make Doxygen hover comments customizable with
C_Cpp.doxygen.sectionTags. #8525 - Add better build and debug task handling for when a compiler or debugger doesn't exist. #8836
- Delay applying
c_cpp_properties.jsonchanges until after a save. #9185 - Create directories on Linux/Mac with 755 instead of 777 permissions. #9670
- Check for MSVC environment variables for configuring IntelliSense. #9745
- Enable the inlay hint settings to be set per-workspace folder. #9782
- Add a
C_Cpp.hoversetting to enable disabling hover results. #9793 - Update to clang-format and clang-tidy 15.0.3. #9816
- Enable hiding the SSH Targets view with the
C_Cpp.sshTargetsViewsetting. #9836 - Change "Enabled", "Disabled", "Default" settings to camelCase. PR #9862
- Add support for C++ modules IFC version 0.42. #9884
- Add SSH terminal for targets. PR #9895
- Make array settings give a warning for duplicates. PR #9959
- Add "iar" and "armcc5" problem matchers. #10054
- Pass
--Wno-error=unknownto clang-format (12 or newer) to avoid failing on unsupported settings. #10072 - Add support for
/cygdrivepaths returned by some versions of Cygwin. #10112 - Switch from RapidJSON to VS's internal JSON parser.
Bug Fixes
- Fix "final" breaking formatting. #6638
- Fix incorrect Outline view with C++20 namespace ::inline syntax. #7216
- Fix updates to compile_commands.json not being handled if specified using a relative path. #7610
- Fix variadic macros not expanding correctly. #8178
- Fix the
editor.parameterHints.enabledsetting not being used whenC_Cpp.autocompleteAddParenthesesistrue. #9314 - Fix IntelliSense bug "A result type of
__builtin_choose_exprthat returns a pointer to a function is not correctly inferred in clang mode". #9368 - Fix some invalid macro redefinition errors. #9435
- Fix wordexp sometimes getting stuck on Mac (and Linux). #9688
- Fix ctrl+space completion for Doxygen tags. #9732
- Fix the position of inlay parameter hints when using at or operator[]. #9741
- Fix
-std=being passed to clang-tidy in certain cases . #9776 - Fix
${workspaceFolder}not being resolved inC_Cpp.clang_format_style. #9786 - Fix debugger visualization for ArrayItem elements more than 1000. #9801
- Fix extra comma in the generated the
(gdb) attachconfiguration inlaunch.json. #9818 - Fix IntelliSense crash with range-v3
ranges::views::addressof. #9870 - Fix slow compiler querying. #9882
- Handle
-fexperimental-libraryclang argument. #9888 - Fix compiler querying with multiple -arch. #9894
- Fix code analysis errors related to SSE being enabled when gcc is used. #9898
- Fix issue with parsing SSH configurations that could cause the extension to fail to activate. #9933
- Fix inlay hints showing "type" for lambdas in certain cases. #9971
- Resolve variables for
C_Cpp.codeAnalysis.clangTidy.argsandheaderFilter. #9981, #9996 - Fix some translations. #9986, #10011, #10012, #10013
- Fix "Step Over past a logpoint stops at the wrong place". #9995
- Disable the "Generate Doxygen Comment" context menu when IntelliSense is disabled. PR #10007
- Fix Doxygen code action from appearing on a function that already has a
*/comment. #10009 - Fix clang-tidy and clang-format not working on CentOS7 and other Linux OS's without glibc 2.27 or greater. #10019
- Fix various bugs with the
C_Cpp.codeAnalysis.clangTidy.headerFiltersetting. #10023 - Fix Doxygen comment generation when there's a selection. #10028
- Fix issue that could cause document corruption. #10035
- Fixed crash on Linux/Mac when a full command line is specified in
compilerPathcontaining invalid arguments. PR #10070 - Fix random "Failed to spawn IntelliSense process: 65520" on Mac. #10091
- Fix "Don't hardcode path to kill in UnixUtilities". #10124
- Ellie Hermaszewska (@expipiplus1) PR #1373
- Fix formatting when clang-format 11 or earlier is used (and another issue for version 8 or earlier). #10178
- Fix "Natvis: are multi-dimensional arrays supported in gdb natvis?". MIEngine#980
- Fix include completion sorting extensionless headers (e.g. string) after headers with an extension (e.g. string.h).
- Fix extensionHost logging an error related to onWillSaveTextDocument whenever a save is done.
- Fix random "Failed to spawn IntelliSense process" on Mac.
- Fix a deadlock when IntelliSense errors are updating.
- Fix redundant rescan when adding a workspace folder.
Removed Feature
- Removed explicit WSL support in favor of using the WSL extension. PR #10066
Known Issues
- Changes to the enclosing type aren't taken into account after Create Declaration / Definition is used once. #10162
1.13.5 (pre-release, release candidate)
Instructions
Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or 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).
Requirements
- VS Code 1.67.0 or later.
Changes
Bug Fixes
- Fix "Step Over past a logpoint stops at the wrong place". #9995
- Fix "Don't hardcode path to kill in UnixUtilities". #10124
- Ellie Hermaszewska (@expipiplus1) PR #1373
- Fix the create declaration/definition feature not adding the definition if a new source file needs to be created. #10159
- Fix the create declaration/definition feature not having the correct cursor location after adding a definition. #10160
- Fix the create declaration/definition feature not formatting inserted definitions. #10161
- This has the side-effect of fixing the extra newlines created in a new file if clang-format is used. #10164
- However, clang-format 15 has a bug which can cause formatting of newly inserted definitions to fail in some cases: LLVM#59178
- Fix formatting when clang-format 11 or earlier is used (and another issue for version 8 or earlier). #10178