Skip to content

Releases: microsoft/vscode-cpptools

0.25.0-insiders2

16 Aug 00:32
Compare
Choose a tag to compare
0.25.0-insiders2 Pre-release
Pre-release

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 References without checking C_Cpp.experimentalFeatures.
  • Fix Find All References progress bar not increasing as often as it should.
  • Add not supported messages for ARM and Alpine containers. PR #4027
  • Add support for -imsvc compile 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 reference sometimes being shown instead of Inactive reference. #4041
  • Fix bug when compile_commands.json changes. #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

10 Aug 01:36
6bc6d49
Compare
Choose a tag to compare
0.25.0-insiders Pre-release
Pre-release

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 References when C_Cpp.experimentalFeatures is set to "Enabled". #15
  • Add -x86 options for intelliSenseMode. #2312
  • Add c++20 option to cppStandard. #3448
  • Add support for resolving missing includes via the vcpkg dependency manager. PR #3791

Enhancements

  • Added support for compile commands:
    • -iquote. #2088
    • -imacros. #2417
    • -idirafter(--include-directory-after & --include-directory-after=). #3713
  • Switch to using VS Code's Go to Declaration. #2959
  • Added compilerArgs property 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.json file changes not updated. #3864.
  • Fix Failed to parse error message in the open file scenario. #3888
  • Fix IntelliSense-based Go to Definition failing with using 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

22 Jul 19:41
fa4d7b2
Compare
Choose a tag to compare

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

04 Jul 01:07
3ed0871
Compare
Choose a tag to compare

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

Enhancements

  • Configuration UI editor improvements:
    • Add list of detected compiler paths. PR #3708
    • Enable selecting/editing of other configurations and add "Advanced Settings" section. PR #3732
  • Enable envFile for cppdbg. PR #3723
  • Change the default path value of C_Cpp.intelliSenseCachePath. #3347 #3664
  • Change C_Cpp.clang_format_path to machine scope. #3774
  • Add validation to the advanced configuration UI settings. PR #3838
  • Add Current Configuration to C/C++: Log Diagnostics. PR #3866

Bug Fixes

  • Fix for gdb follow-fork-mode child not working. #2738
  • Fix IntelliSense process crash on hover with certain arrays. #3081
  • Fix IntelliSense-based Go to Definition for 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 sourceFileMap to 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 Definition when is void missing 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.exe compiler. #3637
  • Fix resolving ${workspaceFolderBasename} and add ${workspaceStorage}. #3642
  • Fix IntelliSense-based Go to Definition performance issue due to extra database iteration. #3655
  • Fix SourceRequest causing debugging to stop with NotImplementedException. #3662
  • Fix typo in intelliSenseMode description.
  • Fix invalid warning with typedef enums in .c files. #3685
  • Fix incorrect keyword completion 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 remoteProcessPicker on Windows. #3758
  • Fix crash when tag parsing Objective-C code. #3776
  • Fix duplicate slashes getting added to c_cpp_properties.json. PR #3778
  • Fix envFile variable 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/MIDebuggerServerAddress on Linux and macOS. MIEngine#844
  • Improvements to CPU and memory usage when editing.

Known Issues

  • Outline shows No symbols found after a file is opened (until it's edited). #3877

0.24.0-insiders3

28 Jun 02:42
c84cb36
Compare
Choose a tag to compare
0.24.0-insiders3 Pre-release
Pre-release

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 envFile variable substitution. #3836
  • Fix missing headers popup. PR #3840

Known Issues

  • None so far.

0.24.0-insiders2

26 Jun 01:42
3926110
Compare
Choose a tag to compare
0.24.0-insiders2 Pre-release
Pre-release

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_path to machine scope. #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

14 Jun 22:11
db1f631
Compare
Choose a tag to compare
0.24.0-insiders Pre-release
Pre-release

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

Minor Changes

  • Configuration UI editor improvements:
    • Add list of detected compiler paths. PR #3708
    • Enable selecting/editing of other configurations and add "Advanced Settings" section. PR #3732
  • Enable envFile for cppdbg. PR #3723
  • Change the default path value of C_Cpp.intelliSenseCachePath. #3347 #3664

Bug Fixes

  • Fix IntelliSense-based Go to Definition for 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 Definition when is void missing 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.exe compiler. #3637
  • Fix resolving ${workspaceFolderBasename} and add ${workspaceStorage}. #3642
  • Fix IntelliSense-based Go to Definition performance issue due to extra database iteration. #3655
  • Fix SourceRequest causing debugging to stop with NotImplementedException. #3662
  • Fix typo in intelliSenseMode description.
  • Fix invalid warning with typedef enums in .c files. #3685
  • Fix incorrect keyword completion 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 remoteProcessPicker on 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/MIDebuggerServerAddress on 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

14 May 01:39
084a8e7
Compare
Choose a tag to compare

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.json creation when intelliSenseEngine is "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

07 May 03:01
4e20f27
Compare
Choose a tag to compare

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.json file. 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 with C/C++: Edit configurations (JSON) to open c_cpp_properties.json.
    • The default whether to open the UI editor or JSON file is based on the workbench.settings.editor setting.
  • Add command C/C++: Log Diagnostics to log language service diagnostics. PR #3489
  • Add support for .env files for cppvsdbg. #3490

Other Changes

  • Enable flag /permissive- as an argument to compilerPath with cl.exe. #1589, #3446
  • Configuration squiggles for c_cpp_properties.json now validates if the setting values of compilerPath and intelliSenseMode match on Windows. #2983
  • Enable -fms-extensions to be used as an argument to compilerPath on Linux/Mac. #3063
  • Change the default value of C_Cpp.intelliSenseEngineFallback setting to Disabled. #3165
  • Add squiggle when compilerPath uses spaces and arguments without ". #3357
  • Change the Disabled value for C_Cpp.errorSquiggles to stop showing missing header squiggles. #3361
  • Add enableConfigurationSquiggles setting to allow squiggles to be disabled for c_cpp_properties.json. #3403
  • Switch to using the installExtension command for offline/insider vsix installing (to reduce install failures). #3408
  • Add a better example to the description of C_Cpp.clang_format_style and C_Cpp.clang_format_fallback_style. #3419
  • Add a new (default) value of EnabledIfIncludesResolve to C_Cpp.errorSquiggles, which only shows error squiggles if include headers are successfully resolved. PR #3421
  • Disable debug heap by default with cppvsdbg. #3484
  • 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 .C files as C++ files Microsoft/vscode#59369 -- .C files become associated by name in files.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 includePath when they end with a directory separator on Windows. #3245
  • Fix duplicate compiler build tasks appearing when compilerPath has arguments. PR #3360
  • Fix environment variables not resolving with C_Cpp.intelliSenseCachePath. #3367
  • Fix the formatting of snippets text. #3376
  • Fix the default AccessModifierOffset used 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.json configuration prompt being disabled per user instead of per folder. PR #3399
  • Fix .cmd and .bat files not working for compilerPath on Windows. #3428
  • Fix compilerPath with 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.json squiggles when the configuration name has regex characters. PR #3478
  • Use the editor.tabSize setting instead of 2 when creating build tasks. PR #3486
  • Fix some potential crashes on hover. #3509
  • Fix for NullReferenceException occurring when "args" is not specified in launch.json. #3532
  • Fix Go to Definition giving no results when IntelliSense doesn't find the symbol. #3549
  • Fix configuration squiggles with trailing backslashes. PR #3573
  • Fix includePath code actions, configuration prompts, and the C/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.

0.23.0-insiders2

02 May 00:19
b67e701
Compare
Choose a tag to compare
0.23.0-insiders2 Pre-release
Pre-release

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

  • Add support for .env files for cppvsdbg. #3490

Minor Changes

  • Switch to using the installExtension command for offline/insider vsix installing (to reduce install failures). #3408
  • Enable configuration squiggles for paths delimited by semicolons. PR #3517
  • Add Edit Configurations (JSON) to the Select a configuration dropdown. PR #3519
  • Update configuration UI to save changes after the UI changes focus. #3524
  • Don't show release notes if the extension has never been installed before. #3533
  • Add input validation to the configuration UI. PR #3563
  • Add process ID and memory usage to C/C++: Log Diagnostics results.
  • Remove IntelliSense fallback code actions.

Bug Fixes

  • Work around issue with VS Code not treating .C files as C++ files Microsoft/vscode#59369 -- .C files become associated by name in files.associations. #2558
  • Fix "Extension causes high cpu load" due to module loading. #3213
  • Fix backslashes getting added each time settings are saved. #3526
  • Fix regression with some C++17 features with msvc-x64 mode. #3541
  • Fix Go to Definition giving no results when IntelliSense doesn't find the symbol. #3549
  • Fix configuration squiggles with trailing backslashes. PR #3573
  • Fix includePath code actions, configuration prompts, and the C/C++: Change configuration provider... command. PR #3576
  • Fix crash on hover (that could occur when document comments have blank lines).
  • Fix randomly occurring crash (that could occur when opening files while IntelliSense squiggles are pending).

Known Issues

  • None so far.