Skip to content

Releases: microsoft/vscode-cpptools

0.29.0

16 Jul 02:12
a6f012a

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.44.0 or later.
  • 32-bit x86 Linux is no longer supported. #5346

Changes

New Features

  • Add Doxygen comment support (to tooltip display of hover, completion, and signature help). #658
    • The way comments are formatted is controlled by the C_Cpp.simplifyStructuredComments setting.
  • Auto-convert . to -> when the type is a pointer. #862
  • Switch to using the VS Code Semantic Tokens API for semantic colorization (works with remoting). PR #5401, #3932, #3933, #3942
  • Add support for LogMessage Breakpoints for debug type cppdbg. MIEngine#1013

Enhancements

  • Automatically add "${default}" to the default includePath in c_cpp_properties.json if C_Cpp.default.includePath is set. #3733
  • Add configuration provider logging to C/C++: Log Diagnostics. #4826
  • Add support for the Debug Welcome Panel. #4837
  • Update to clang-format 10. #5194
  • Add system to store and query properties from the active C/C++ configuration.
  • Add quoteArgs to launch.json schema. PR #5639
  • Add logs for a resolved launch.json if "engineLogging" is enabled. PR #5644
  • Add threadExit and processExit logging flags for 'cppvsdbg'. PR #5652

Bug Fixes

  • Fix IntelliSense when using "import_" in a variable name. #5272
  • Add localization support for autocomplete and hover text. #5370
  • Some updateChannel fixes. PR #5465
  • Fix wrong language standard used with compile commands. #5498
  • Fix issue with defines and includes not being handled correctly in compilerPath or compilerArgs. #5512
  • Add gcc/gcc-10 compiler detection. #5540
  • Fix --target compiler arg getting overridden. #5557
  • Fix Find All References and Rename when multiple references are on the same line. #5568
  • Fix IntelliSense process crashes. #5584, #5629
  • Fix an add/remove workspace folder crash. #5591
  • Fix default build tasks failing on Windows if the compiler isn't on the PATH. #5604
  • Fix updating files.associations and .C files being associated with C instead of C++. #5618
  • Fix IntelliSense malfunction when RxCpp is used. #5619
  • Fix an incorrect IntelliSense error. #5627
  • Ignore "screen size is bogus" error when debugging. PR #5669
  • Fix compile_commands.json sometimes not updating. #5687
  • Add msys2 clang compilers to the compiler search list (previously only gcc was handled). #5697
  • Fix extension getting stuck when an "@" response file that doesn't end with ".rsp" is used in compilerArgs. #5731
  • Fix forced includes not handled properly when parsed as compiler args. #5738
  • Fix potential thread deadlock in cpptools.
  • Fix copying a long value from debug watch results in pasting partial value #5470
  • Fix Modifying conditional breakpoints #2297
  • Fix find .exe in Windows path #3076

Known Issues

  • None so far.

0.29.0-insiders2

09 Jul 00:08
471f9b3

Choose a tag to compare

0.29.0-insiders2 Pre-release
Pre-release

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.44.0 or later.

Changes

New Features

  • Added support for LogMessage Breakpoints for debug type cppdbg. #1013
  • Switch to using the VS Code Semantic Tokens API for semantic colorization. PR #5401

Enhancements

  • Automatically add "${default}" to the default includePath in c_cpp_properties.json if C_Cpp.default.includePath is set. #3733
  • Add C_Cpp.simplifyStructuredComments setting. #5706
  • Add configuration provider logging to C/C++: Log Diagnostics. #4826

Bug Fixes

  • Ignore "screen size is bogus" error when debugging. PR #5669
  • Fix compile_commands.json sometimes not updating. #5687
  • Add msys2 clang compilers to the compiler search list (previously only gcc was handled). #5697
  • Fix extension getting stuck when an "@" response file that doesn't end with ".rsp" is used in compilerArgs. #5731
  • Fix forced includes not handled properly when parsed as compiler args. #5738

Known Issues

  • None so far.

0.29.0-insiders

25 Jun 01:25
2efdb84

Choose a tag to compare

0.29.0-insiders Pre-release
Pre-release

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.44.0 or later.

Changes

New Features

  • Add Doxygen comment support (to tooltip display of hover, completion, and signature help). #658

Enhancements

  • Add support for the Debug Welcome Panel. #4837
  • Update to clang-format 10. #5194
  • Added system to store and query properties from the active C/C++ configuration.
  • Add quoteArgs to launch.json schema. PR #5639
  • Add logs for a resolved launch.json if "engineLogging" is enabled. PR #5644
  • Add threadExit and processExit logging flags for 'cppvsdbg'. PR #5652

Bug Fixes

  • Add localization support for autocomplete and hover text. #5370
  • Some updateChannel fixes. PR #5465
  • Fix wrong language standard used with compile commands. #5498
  • Fix issue with defines and includes not being handled correctly in compilerPath or compilerArgs. #5512
  • Add gcc/gcc-10 compiler detection. #5540
  • Fix --target compiler arg getting overridden. #5557
  • Fix IntelliSense process crashes. #5584, #5629
  • Fix Find All References and Rename when multiple references are on the same line. #5568
  • Fix an add/remove workspace folder crash. #5591
  • Fix default build tasks failing on Windows if the compiler isn't on the PATH. #5604
  • Fix updating files.associations and .C files being associated with C instead of C++. #5618
  • Fix IntelliSense malfunction when RxCpp is used. #5619
  • Ignore "screen size is bogus" error when debugging. PR #5669
  • Fix potential thread deadlock in cpptools.
  • Fix copying a long value from debug watch results in pasting partial value #5470
  • Fix Modifying conditional breakpoints #2297
  • Fix find .exe in Windows path #3076

Known Issues

  • Extension freezes with an Arduino project . #5731

0.28.3

09 Jun 17:41
b331179

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.43.0 or later.
  • 32-bit Linux is no longer supported. #5346

Changes

Version 0.28.3: June 9, 2020

Enhancements

  • Update version of vscode-cpptools API to 4.0.1 PR #5624

0.28.2

02 Jun 03:15
214a229

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.43.0 or later.
  • 32-bit Linux is no longer supported. #5346

Changes

Version 0.28.2: June 1, 2020

Regression Bug Fixes

Other Bug Fixes

  • Fix problemMatcher not being added to C/C++ build tasks. #3295
  • Fix /usr/bin being used as the default cwd (instead of ${workspaceFolder}) for C/C++ build tasks. #4761
  • Fix processing of quoted arguments with spaces in compilerPath. PR #5513
  • Fix inconsistent task label and preLaunchTask being used for C/C++ build tasks. #5561

Known Regressions

  • Default mingw build task fails on Windows if mingw isn't in the PATH. #5604

0.28.1

21 May 01:28
214a229

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.43.0 or later.
  • 32-bit Linux is no longer supported. #5346

Changes

Bug Fixes

  • Fix errors not appearing after switching between a WSL and non-WSL config on Windows. #5474
  • Fix cpptools crash when gcc is not in $PATH on Linux. #5484
  • Fix top IntelliSense crash regression. #5486
  • Fix squiggles appearing too soon (while typing). #5531

Known Issues

  • g++-10 and gcc-10 are not auto-detected for compilerPath. #5540
  • c++20 is incorrectly used as the default cppStandard with g++-10. #5336

0.28.0

13 May 02:00
25022e9

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.43.0 or later.
  • 32-bit Linux is no longer supported. #5346

Changes

New Features

  • Add C/C++ language-aware code folding. #407
  • Add GNU (and C18) language standard options. #2782
  • Add ARM and ARM64 IntelliSense modes. #4271, PR #5250

Enhancements

  • Change the gcc problem matcher to use autoDetect for fileLocation . #1915
  • Add support for IntelliSense-based Go to Definition on #include statements. #2564
  • Support relative paths with forcedInclude. #2780
  • Make the Visual Studio formatting style respect the C++ standard (e.g. > > for C++03 or earlier). #3578
  • Add support for more C++20 features, such as concepts (not 100% complete yet). #4195
  • Process the "std" and bitness (-m64/-m32) compiler args. #4726
  • Switch from our custom Rename UI to VS Code's Refactor Preview. #4990

Bug Fixes

  • Fix browse.path not getting set correctly when compileCommands is used. #1163
  • Fix an issue with squiggle updates not occurring when a dependent file is created, deleted, or renamed. #3670
  • Fix temporary VSIX files not getting deleted after installation #3923
  • Process "$CPATH" on non-Windows OS's. #3940
  • Fix missing include message when a configuration provider is used. #3971
  • Change machine-dependent settings to use remote settings instead of user settings. #4121
  • Fix compiler querying for compilers that output non-English strings. #4542
  • Fix compiler querying when the '-include' argument is used. #4655
  • Fix the "Unable to load schema" error for c_cpp_properties.json. #4841
  • Change "Visual Studio" clang_format_fallback_style setting to use NamespaceIndentation All. #5124
  • Fix "C++98" and "C++0x" modes. #5157, #5225
  • Improve the error message for multiroot projects using compile_commands.json. #5160
  • Fix some cpptools process crashes. #5280
  • Avoid <…> truncation on hover. #5291
  • Fix incorrect translations. PR #5300
  • Fix cpptools auto-restarting after a crash. #5303
  • Fix incorrect c_cpp_properties.json squiggles. #5314, #5322
  • Fix error The task provider for "C/C++" tasks unexpectedly provided a task of type "shell". #5388
  • Fix compilerPath set to "" not working. #5392
  • Fix IntelliSense sometimes not working on a header file (or giving "Cannot Confirm Reference") if an existing TU is chosen that doesn't actually contain the header file.
  • Fix random crashes after a settings change.
  • Fix redundant squiggle updates.

Known Issues

  • Global symbols for concepts will be added in the next release (0.29.0-insiders). Also, __cpp_concepts isn't defined, and there are other concepts-related bugs (fix in development, unknown release).
  • An IntelliSense (cpptools-srv process) crash regression. #5476

0.28.0-insiders3

09 May 00:38
7ab06da

Choose a tag to compare

0.28.0-insiders3 Pre-release
Pre-release

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 (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.

Requirements

  • VS Code 1.43.0 or later.
  • 32-bit Linux is no longer supported. #5346

Changes

New Features

  • Add C/C++ language-aware code folding. #407
  • Add GNU (and C18) language standard options. #2782
  • Add ARM and ARM64 IntelliSense modes. #4271, PR #5250

Enhancements

  • Change the gcc problem matcher to use autoDetect for fileLocation . #1915
  • Add support for IntelliSense-based Go to Definition on #include statements. #2564
  • Support relative paths with forcedInclude. #2780
  • Make the Visual Studio formatting style respect the C++ standard (e.g. > > for C++03 or earlier). #3578
  • Add support for more C++20 features, such as concepts (not 100% complete yet). #4195
    • Known Issue: Global symbols for concepts will be added in the next release (fix planned for 0.29.0-insiders). Also, __cpp_concepts isn't defined, and there are other concepts-related bugs (fix planned for 0.29.0 or later) #5444
  • Process the "std" and bitness (-m64/-m32) compiler args. #4726
  • Switch from our custom Rename UI to VS Code's Refactor Preview. #4990

Bug Fixes

  • Fix browse.path not getting set correctly when compileCommands is used. #1163
    • Known Issue: Some paths are still missing in certain cases (fix planned for 0.28.0 or 0.29.0-insiders).
  • Fix an issue with squiggle updates not occurring when a dependent file is created, deleted, or renamed. #3670
  • Fix temporary VSIX files not getting deleted after installation #3923
  • Process "$CPATH" on non-Windows OS's. #3940
  • Fix missing include message when a configuration provider is used. #3971
    • Known Issue: The error message is incorrect (fix planned for 0.28.0).
  • Change machine-dependent settings to use remote settings instead of user settings. #4121
  • Fix compiler querying for compilers that output non-English strings. #4542
  • Fix compiler querying when the '-include' argument is used. #4655
  • Fix the "Unable to load schema" error for c_cpp_properties.json. #4841
  • Change "Visual Studio" clang_format_fallback_style setting to use NamespaceIndentation All. #5124
  • Fix "C++98" and "C++0x" modes. #5157, #5225
  • Improve the error message for multiroot projects using compile_commands.json. #5160
  • Fix some cpptools process crashes. #5280
  • Avoid <…> truncation on hover. #5291
  • Fix incorrect translations. PR #5300
  • Fix cpptools auto-restarting after a crash. #5303
  • Fix incorrect c_cpp_properties.json squiggles. #5314, #5322
  • Fix error The task provider for "C/C++" tasks unexpectedly provided a task of type "shell". #5388
  • Fix compilerPath set to "" not working. #5392
  • Fix IntelliSense sometimes not working on a header file (or giving "Cannot Confirm Reference") if an existing TU is chosen that doesn't actually contain the header file.
  • Fix random crashes after a settings change.
  • Fix redundant squiggle updates.

Known Issues

  • See the 3 issues inlined above.

0.28.0-insiders2

05 May 02:35
5767a5e

Choose a tag to compare

0.28.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 with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.

Requirements

  • VS Code 1.43.0 or later.
  • 32-bit Linux is no longer supported. #5346

Changes

New Features

  • Add GNU (and C18) language standard options. #2782

Bug Fixes

  • Fix some cpptools and cpptools-srv crash regressions.
  • Fix an issue with squiggle updates not occurring when a dependent file is created, deleted, or renamed. #3670
  • Avoid <…> truncation on hover. #5291
  • Fix compilerPath set to "" not working. #5392
  • Fix IntelliSense sometimes not working on a header file if an existing TU is chosen that doesn't actually contain the header file. #5376

Known Issues

  • None so far.

0.28.0-insiders

29 Apr 03:37
4216aa4

Choose a tag to compare

0.28.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 with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.

Requirements

  • VS Code 1.43.0 or later.
  • 32-bit Linux is no longer supported. #5346

Changes

New Features

  • Add C/C++ language-aware code folding. #407
  • Add ARM and ARM64 IntelliSense modes. #4271, PR #5250

Enhancements

  • Change the gcc problem matcher to use autoDetect for fileLocation . #1915
  • Add support for IntelliSense-based Go to Definition on #include statements. #2564
  • Support relative paths with forcedInclude. #2780
  • Make the Visual Studio formatting style respect the C++ standard (e.g. > > for C++03 or earlier). #3578
  • Add support for more C++20 features, such as concepts. #4195
  • Process the "std" and bitness (-m64/-m32) compiler args. #4726
  • Switch from our custom Rename UI to VS Code's Refactor Preview. #4990

Bug Fixes

  • Process "$CPATH" on non-Windows OS's. #3940
  • Fix compiler querying for compilers that output non-English strings. #4542
  • Fix compiler querying when the '-include' argument is used. #4655
  • Fix the "Unable to load schema" error for c_cpp_properties.json. #4841
  • Change "Visual Studio" clang_format_fallback_style setting to use NamespaceIndentation All. #5124
  • Fix "C++98" and "C++0x" modes. #5157, #5225
  • Improve the error message for multiroot projects using compile_commands.json. #5160
  • Fix some cpptools process crashes. #5280
  • Fix incorrect translations. PR #5300
  • Fix cpptools auto-restarting after a crash. #5303
  • Fix incorrect c_cpp_properties.json squiggles. #5314, #5322

Known Issues

  • There are some cpptools and cpptools-srv crash regressions we're working on fixing for 0.28.0-insiders2.