Skip to content

Releases: microsoft/vscode-cpptools

1.14.3

15 Feb 01:53
fa77454
Compare
Choose a tag to compare

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 Compiler command 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.experimentalFeatures is true.
  • 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

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.hover is changed. #10076
  • Fix function inlay hints not working with std::string_literal arguments. #10078
  • Fix IntelliSense completion for std::string with ?: and string(). #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)

10 Feb 02:14
edf8e0a
Compare
Choose a tag to compare
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

  • Show a reload prompt after C_Cpp.hover is 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)

03 Feb 02:47
b745ebc
Compare
Choose a tag to compare
1.14.1 (pre-release) Pre-release
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)

14 Jan 00:24
b69d17a
Compare
Choose a tag to compare
1.14.0 (pre-release) Pre-release
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

  • Add support for LLVM-based Intel C/C++ compilers. #10218
  • SSH output improvements. PR #10292

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_literal arguments. #10078
  • Fix IntelliSense completion for std::string with ?: and string(). #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

04 Jan 23:17
f7c2cc8
Compare
Choose a tag to compare

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

16 Dec 03:02
a397a47
Compare
Choose a tag to compare

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_directory IntelliSense 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

08 Dec 22:42
01a747a
Compare
Choose a tag to compare

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.associations not working. #10244

1.13.6

07 Dec 03:45
07efeb4
Compare
Choose a tag to compare

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.caseSensitiveFileSupport for 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.json changes 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.hover setting 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.sshTargetsView setting. #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=unknown to clang-format (12 or newer) to avoid failing on unsupported settings. #10072
  • Add support for /cygdrive paths 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.enabled setting not being used when C_Cpp.autocompleteAddParentheses is true. #9314
  • Fix IntelliSense bug "A result type of __builtin_choose_expr that 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 in C_Cpp.clang_format_style. #9786
  • Fix debugger visualization for ArrayItem elements more than 1000. #9801
  • Fix extra comma in the generated the (gdb) attach configuration in launch.json. #9818
  • Fix IntelliSense crash with range-v3 ranges::views::addressof. #9870
  • Fix slow compiler querying. #9882
  • Handle -fexperimental-library clang 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.args and headerFilter. #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.headerFilter setting. #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 compilerPath containing 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
  • 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)

29 Nov 03:19
7fec8ba
Compare
Choose a tag to compare
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

Bug Fixes

  • Fix "Step Over past a logpoint stops at the wrong place". #9995
  • Fix "Don't hardcode path to kill in UnixUtilities". #10124
  • 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

Known Issues

  • Changes to the enclosing type of a function aren't not taken into account after Create Declaration / Definition is used once. #10162
  • Create Declaration / Definition doesn't work correctly with anonymous namespaces. #10189

1.13.4

17 Nov 22:36
c549c07
Compare
Choose a tag to compare
1.13.4 Pre-release
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 the ability to generate definitions from declarations and vice versa. #664

Enhancements

  • Add sections to settings. #8237
  • Check for MSVC environment variables for configuring IntelliSense. #9745
  • Add "iar" and "armcc5" problem matchers. #10054
  • Pass --Wno-error=unknown to clang-format to avoid failing on unsupported settings. #10072
  • Add support for /cygdrive paths returned by some versions of Cygwin. #10112

Bug Fixes

  • Fix updates to compile_commands.json not being handled if specified using a relative path. #7610
  • Fix code analysis errors related to SSE2 being enabled. #9898
  • Fix Doxygen code action from appearing on a function that already has a */ comment. #10009
  • Fix Doxygen comment generation when there's a selection. #10028
  • Fixed crash on Linux/Mac when a full command line is specified in compilerPath containing invalid arguments. PR #10070
  • Fix random "Failed to spawn IntelliSense process: 65520" on Mac. #10091

Removed Features

  • Removed explicit WSL support in favor of using the WSL extension. #10066
  • The fix for an IntelliSense crash with the seqan3 library #8956 in 1.13.3 was removed because it caused a regression. #10075

Known Issues

  • Create declaration/definition does not complete operation when creating new file (re-running the operation after it creates the file will work around it). #10159
  • Create declaration/definition does not select the correct range of new inserted text. #10160
  • Create declaration/definition feature should format newly inserted definition or declaration. #10161
  • Changes to the enclosing type of a function aren't not taken into account after Create Declaration / Definition is used once. #10162
  • Creation declaration/definition that targets a new file (or an empty one) has 2 extra newlines. #10164