Releases: microsoft/vscode-cpptools
0.25.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.
Requirements
- VS Code 1.30.0 or later.
Changes
New Features
- Add
Find All References(Experimental Version). #15- Please refer to Find All References for proposed future improvements, such as #4079.
- Add
-x86options forintelliSenseMode. #2275, #2312 - Add
c++20option tocppStandard. #3448 - Add a code action for resolving missing includes via the
vcpkgdependency manager. PR #3791
Enhancements
- Added support for compile commands:
- Switch to using VS Code's
Go to Declaration. #2959 - Added
compilerArgsproperty setting. PR #3950 - Added support for V3 API. #3987
- Add
not supportedmessages for ARM and Alpine containers. PR #4027 - Add validation for paths from
envvariables. #3912
Bug Fixes
- Fix wrong type of
thispointer. #2303 - Fix previous cache path not deleted when new cache path is specified. Note that the VS Code bug Microsoft/vscode#59391 still occurs on the settings UI, but this fix should delete any incomplete path names as the extension receives changes from the cache path setting. #3644.
- Fix broken shell script when launch/attaching as root. #3711
- Christian A. Jacobsen (@ChristianJacobsen) PR MIEngine#906
- Fix ".H" files not appearing in include completion results on Linux/macOS. #3744
- Fix
compile_commands.jsonfile changes not updated. #3864. - Fix
Failed to parseerror message in the open file scenario. #3888 - Fix loading the wrong symbols when creating or copying a file. #3897
- Fix IntelliSense process crash in clang mode. #3898
- Fix IntelliSense-based
Go to Definitionfailing withusing namespace. #3902, #4018 - Fix completion not showing results for smart pointers. #3926, #3930
- Fix
clang_format_pathcannot be set in workspace settings. #3937 - Fix typos and grammar in documentation.
- Fix NullReferenceException when unable to launch and an unresolved parameter exists in the string. This was causing a useless error message. #4024, #4090
- Fix debugger can't debug file whose folder path includes a parenthesis. #4030
- Fix duplicate content appearing after formatting of a new file. #4091
- Fix
files.excludebug on Windows. #4095 - Fix NullReferenceException when
cwdis null. MIEngine#911 - Fix wrong IntelliSense for C++ types after editing within a function and after a lambda.
Known Issues
NullReferenceExceptionwhen debugging if"description"is missing. #4125- Find All References issues.
- C++20 support is incomplete (approximately equal to the support in VS 2019 16.3). More support will be gradually added in future releases, e.g. #4088
0.25.0-insiders2
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Enhancements
- Enable
Find All Referenceswithout checkingC_Cpp.experimentalFeatures. - Fix
Find All Referencesprogress bar not increasing as often as it should. - Add
not supportedmessages for ARM and Alpine containers. PR #4027 - Add support for
-imsvccompile commands flag. #4032
Bug Fixes
- Fix IntelliSense process crash in clang mode. #3898
- Fix completion not showing results for smart pointers. #3930
- Fix
Cannot confirm referencesometimes being shown instead ofInactive reference. #4041 - Fix bug when
compile_commands.jsonchanges. #4058 - Fix wrong IntelliSense for C++ types after editing within a function and after a lambda.
Known Issues
- It fails to run on Mac 10.12. #4096
- In remote scenarios like Remote-SSH, the extension may not install successfully when using the "Insiders" updateChannel. #3874
- Find All References issues.
- The following doesn't work: "Add support for resolving missing includes via the vcpkg dependency manager." PR #3791
0.25.0-insiders
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Changes
New Features
- Add
Find All ReferenceswhenC_Cpp.experimentalFeaturesis set to"Enabled". #15 - Add
-x86options forintelliSenseMode. #2312 - Add
c++20option tocppStandard. #3448 - Add support for resolving missing includes via the
vcpkgdependency manager. PR #3791
Enhancements
- Added support for compile commands:
- Switch to using VS Code's
Go to Declaration. #2959 - Added
compilerArgsproperty setting. PR #3950 - Added support for V3 API. #3987
Bug Fixes
- Fix previous cache path not deleted when new cache path is specified. Note that the VS Code bug Microsoft/vscode#59391 still occurs on the settings UI, but this fix should delete any incomplete path names as the extension receives changes from the cache path setting. #3644.
- Fix
compile_commands.jsonfile changes not updated. #3864. - Fix
Failed to parseerror message in the open file scenario. #3888 - Fix IntelliSense-based
Go to Definitionfailing withusing namespace. #3902 - Fix typos and grammar in documentation.
Known Issues
- In certain remote scenarios like Remote-SSH, the extension may not install successfully when using the "Insiders" updateChannel. #3874
- More C++20 support and IntelliSense bug fixes will be added in the next Insiders release. #3930
- "Inactive references" are sometimes incorrectly reported as "Cannot confirm reference": #4041
- "Click to preview" is disabled for "Peek References": #4040
- Other Find All References issues.
0.24.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.
Requirements
- VS Code 1.30.0 or later.
Changes
Bug Fixes
- Fix an issue with the Outline not being populated when a file is opened. #3877
- Update scopes used by semantic colorization. PR# 3896
Known Issues
- None so far.
0.24.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.
Requirements
- VS Code 1.30.0 or later.
Changes
Version 0.24.0: July 3, 2019
New Features
- Semantic colorization Documentation #230
- Add
Rescan Workspacecommand. microsoft/vscode-cpptools-api#11
Enhancements
- Configuration UI editor improvements:
- Enable
envFileforcppdbg. PR #3723 - Change the default path value of
C_Cpp.intelliSenseCachePath. #3347 #3664 - Change
C_Cpp.clang_format_pathtomachinescope. #3774 - Add validation to the advanced configuration UI settings. PR #3838
- Add
Current ConfigurationtoC/C++: Log Diagnostics. PR #3866
Bug Fixes
- Fix for gdb
follow-fork-modechildnot working. #2738 - Fix IntelliSense process crash on hover with certain arrays. #3081
- Fix IntelliSense-based
Go to Definitionfor goto labels. #3111 - Fix IntelliSense behaving incorrectly when files are opened with different casing on Windows. #3229
- Fix user defined literals crashing IntelliSense in clang/gcc mode. #3481
- Improve
sourceFileMapto be more dynamic. #3504 - Fix IntelliSense-based hover document comments being shown for invalid declarations not used by the current translation unit. #3596
- Fix
Go to Definitionwhen isvoidmissing in the parameter list of a function definition a .c file. #3609 - Fix configuration validation of compiler path and IntelliSense mode compatibility for
clang-cl.execompiler. #3637 - Fix resolving
${workspaceFolderBasename}and add${workspaceStorage}. #3642 - Fix IntelliSense-based
Go to Definitionperformance issue due to extra database iteration. #3655 - Fix
SourceRequestcausing debugging to stop withNotImplementedException. #3662 - Fix typo in
intelliSenseModedescription. - Fix invalid warning with typedef enums in .c files. #3685
- Fix incorrect
keywordcompletion occurring for pragma#keyword. #3690 - Fix problem matcher to show fatal errors from GCC #3712
- Fix multi-root folders with the same name sharing the same browse database. PR #3715
- Fix
remoteProcessPickeron Windows. #3758 - Fix crash when tag parsing Objective-C code. #3776
- Fix duplicate slashes getting added to
c_cpp_properties.json. PR #3778 - Fix
envFilevariable substitution. #3836 - Fix missing headers popup. PR #3840
- Fix multiple anonymous unions not showing correctly in Locals while debugging. MIEngine#820
- Fix pause not working when using
DebugServer/MIDebuggerServerAddresson Linux and macOS. MIEngine#844 - Improvements to CPU and memory usage when editing.
Known Issues
- Outline shows
No symbols foundafter a file is opened (until it's edited). #3877
0.24.0-insiders3
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario), manually download and install the vsix that matches the target OS.
Requirements
- VS Code 1.30.0 or later.
Changes
Enhancements
- Add validation to the advanced configuration UI settings. PR #3838
Bug Fixes
- Fix IntelliSense process crash on hover with certain arrays. #3081
- Fix crashes after edits, document highlighting, completion, hover, and squiggles. #3834
- Fix
envFilevariable substitution. #3836 - Fix missing headers popup. PR #3840
Known Issues
- None so far.
0.24.0-insiders2
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario), manually download and install the vsix that matches the target OS.
Requirements
- VS Code 1.30.0 or later.
Changes
Minor Changes
- Change
C_Cpp.clang_format_pathtomachinescope. #3774 - Removed syntactic/lexical colorization from
enhancedColorization. PR #3821
Bug Fixes
- Fix crash when tag parsing Objective-C code. #3776
- Fix duplicate slashes getting added to
c_cpp_properties.json. PR #3778 - Fix incorrect "file already opened in editor" message on Linux/Mac. #3786
- Fix colorization for themes with background colors equal to the editor background color. #3780
- Improve performance of colorization. #3781
- Fix regression crash on hover. #3792
Known Issues
- There are still some crashes.
0.24.0-insiders
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix.
Requirements
- VS Code 1.30.0 or later.
Changes
New Features
- Syntactic/lexical and semantic colorization Documentation #230 #3460
- Add
Rescan Workspacecommand. microsoft/vscode-cpptools-api#11
Minor Changes
- Configuration UI editor improvements:
- Enable
envFileforcppdbg. PR #3723 - Change the default path value of
C_Cpp.intelliSenseCachePath. #3347 #3664
Bug Fixes
- Fix IntelliSense-based
Go to Definitionfor goto labels. #3111 - Fix IntelliSense behaving incorrectly when files are opened with different casing on Windows. #3229
- Fix user defined literals crashing IntelliSense in clang/gcc mode. #3481
- Fix IntelliSense-based hover document comments being shown for invalid declarations not used by the current translation unit. #3596
- Fix
Go to Definitionwhen isvoidmissing in the parameter list of a function definition a .c file. #3609 - Fix configuration validation of compiler path and IntelliSense mode compatibility for
clang-cl.execompiler. #3637 - Fix resolving
${workspaceFolderBasename}and add${workspaceStorage}. #3642 - Fix IntelliSense-based
Go to Definitionperformance issue due to extra database iteration. #3655 - Fix
SourceRequestcausing debugging to stop withNotImplementedException. #3662 - Fix typo in
intelliSenseModedescription. - Fix invalid warning with typedef enums in .c files. #3685
- Fix incorrect
keywordcompletion occurring for pragma#keyword. #3690 - Fix problem matcher to show fatal errors from GCC #3712
- Fix multi-root folders with the same name sharing the same browse database. PR #3715
- Fix
remoteProcessPickeron Windows. #3758 - Fix configuration squiggles not appearing for multiple occurrences of the same error. #3765
- Improvements to CPU and memory usage when editing.
- Fix pause not working when using
DebugServer/MIDebuggerServerAddresson Linux and macOS. MIEngine#844 - Fix multiple anonymous unions not showing correctly in Locals while debugging. MIEngine#820
Known Issues
- None so far.
0.23.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.
Requirements
- VS Code 1.30.0 or later.
Changes
Bug Fixes
- Fix
launch.jsoncreation whenintelliSenseEngineis"Disabled". #3583 - Fix C/C++ commands not working if the language service isn't activated. #3615
- Fix missing extension
"Details"page. #3621 - Fix some random crashes related to IntelliSense inactive region processing.
Known Issues
- None yet.
0.23.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.
Requirements
- VS Code 1.30.0 or later.
Changes
New Features
- Add a configuration UI editor to edit IntelliSense settings defined in the underlying
c_cpp_properties.jsonfile. PR #3479, PR #3487, PR #3519, #3524, PR #3563, #3526- Add a new command
C/C++: Edit configurations (UI)to open the UI editor. - Replace the
C/C++: Edit configurations...command withC/C++: Edit configurations (JSON)to openc_cpp_properties.json. - The default whether to open the UI editor or JSON file is based on the
workbench.settings.editorsetting.
- Add a new command
- Add command
C/C++: Log Diagnosticsto log language service diagnostics. PR #3489 - Add support for
.envfiles forcppvsdbg. #3490
Other Changes
- Enable flag
/permissive-as an argument tocompilerPathwithcl.exe. #1589, #3446 - Configuration squiggles for
c_cpp_properties.jsonnow validates if the setting values ofcompilerPathandintelliSenseModematch on Windows. #2983 - Enable
-fms-extensionsto be used as an argument tocompilerPathon Linux/Mac. #3063 - Change the default value of
C_Cpp.intelliSenseEngineFallbacksetting toDisabled. #3165 - Add squiggle when
compilerPathuses spaces and arguments without". #3357 - Change the
Disabledvalue forC_Cpp.errorSquigglesto stop showing missing header squiggles. #3361 - Add
enableConfigurationSquigglessetting to allow squiggles to be disabled forc_cpp_properties.json. #3403 - Switch to using the
installExtensioncommand for offline/insider vsix installing (to reduce install failures). #3408 - Add a better example to the description of
C_Cpp.clang_format_styleandC_Cpp.clang_format_fallback_style. #3419 - Add a new (default) value of
EnabledIfIncludesResolvetoC_Cpp.errorSquiggles, which only shows error squiggles if include headers are successfully resolved. PR #3421 - Disable debug heap by default with cppvsdbg. #3484
- Reported by Djoulihen (@Djoulihen)
- Enable configuration squiggles for paths delimited by semicolons. PR #3517
- Don't show release notes if the extension has never been installed before. #3533
- Remove IntelliSense fallback code actions.
Bug Fixes
- Fix browsing for functions with BOOST_FOREACH. #953
- Work around issue with VS Code not treating
.Cfiles as C++ files Microsoft/vscode#59369 --.Cfiles become associated by name infiles.associations. #2558 - Fix various IntelliSense parsing bugs. #2824, #3110, #3168
- Preserve newlines in documentation comments. #2937
- Fix documentation comments above multi-line templates (and some other issues). #3162
- Fix "Extension causes high cpu load" due to module loading. #3213
- Fix auto-removal of compiler-provided paths in
includePathwhen they end with a directory separator on Windows. #3245 - Fix duplicate compiler build tasks appearing when
compilerPathhas arguments. PR #3360 - Fix environment variables not resolving with
C_Cpp.intelliSenseCachePath. #3367 - Fix the formatting of snippets text. #3376
- Fix the default
AccessModifierOffsetused when formatting. #3376 - Fix null reference during initialization when using custom configuration providers. PR #3377
- Fix symbol parsing when
__MINGW_ATTRIB_*is used. #3390 - Fix
compile_commands.jsonconfiguration prompt being disabled per user instead of per folder. PR #3399 - Fix
.cmdand.batfiles not working forcompilerPathon Windows. #3428 - Fix
compilerPathwith arguments that are surrounded by quotes. #3428 - Fix documentation comments interpreting special characters as markdown. #3441
- Fix hover using the configuration of the active document instead of the hovered document. #3452
- Fix
c_cpp_properties.jsonsquiggles when the configuration name has regex characters. PR #3478 - Use the
editor.tabSizesetting instead of2when creating build tasks. PR #3486 - Fix some potential crashes on hover. #3509
- Fix for
NullReferenceExceptionoccurring when"args"is not specified inlaunch.json. #3532 - Fix
Go to Definitiongiving no results when IntelliSense doesn't find the symbol. #3549 - Fix configuration squiggles with trailing backslashes. PR #3573
- Fix
includePathcode actions, configuration prompts, and theC/C++: Change configuration provider...command. PR #3576 - Fix randomly occurring crash (that could occur when opening files while IntelliSense squiggles are pending).
- Fix crash on hover (that could occur when document comments have blank lines).
- Fix code action sometimes not appearing over a squiggled identifier.
- Fix icon of parameters in completion results.
Known Issues
- None yet.