Skip to content

0.30.0-insiders

Pre-release
Pre-release
Compare
Choose a tag to compare
@sean-mcmanus sean-mcmanus released this 05 Aug 01:08
19f14d1

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 (e.g. for remote ARM machines), 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

  • Support for running the extension on Linux ARM devices, using remoting (arm64/aarch64 not supported yet). #429
  • Add the vcFormat option to C_Cpp.formatting (with C_Cpp.vcFormat.* options) to enable VS-style formatting (instead of clang-format formatting). #657

Enhancements

  • Use jsonc parser to load c_cpp_properties.json to allow comments, trailing commas, etc. #5885

Bug Fixes

  • Fix installation of clang-format 10 with the online vsix. #5194
  • Get the compiler type to determine if it's Clang when querying for default compiler so that the correct default intelliSenseMode is set. #5352
  • Get the default language standard of the compiler and use that std version if no version is specified. #5579
  • Fix an incorrect IntelliSense error squiggle. #5783
  • Fix an IntelliSense crash when using C++20 on Linux. #5727
  • Get the default target of the compiler. If the default target is ARM/ARM64, do not use the generic "--target" option to determine bitness. #5772
  • Fix compilerArgs not being used if no compilerPath is set. #5776
  • Fix semantic colorization and inactive regions for multiroot workspaces. #5812, #5828
  • Fix bug with cl.exe flags /FU and /FI not being processed. #5819
  • Fix cStandard being set to c11 instead of gnu18 with gcc. #5834
  • Fix compile commands compiler not being used if C_Cpp.default.compilerPath is set. #5848
  • Fix a bug that could cause the extension to delay processing a newly opened file until any outstanding IntelliSense operations are complete, if using a custom configuration provider.
  • Fix a bug with incorrect configuration of a file when using a custom configuration provider and no custom configuration is available for that file. This now falls back to the compiler info received from the configuration provider with the browse configuration.
  • Fix a bug in which making a modification to c_cpp_properties.json could result in custom configurations for currently open files being discarded and not re-requested.

Potentially Breaking Changes

  • Settings commentContinuationPatterns, enhancedColorization, and codeFolding are no longer available in per-Folder settings (only Workspace or higher settings). PR #5830
  • Fix compile command arguments not being used when compilerPath is set (so the compile command arguments need to be compatible now).
  • Default formatting results may be different if the "Visual Studio" style is used -- use the "Emulated Visual Studio" style to get the previous behavior. For example, see #5901
  • If a non-matching intelliSenseMode was being used, such as clang-x64 with a gcc ARM compiler, then we may auto-fix it internally, which may cause changes to IntelliSense behavior.

Known Issues

  • Some of the vcFormat.* settings defaults don't match VS default values. #5907
  • Using formatting can cause document corruption in some cases. The workaround is to change "C_Cpp.formatting" to "clangFormat", "C_Cpp.clang_format_style" to "Emulated Visual Studio", and "C_Cpp.clang_format_fallbackStyle" to "Emulated Visual Studio". #5914
  • There is a high hitting IntelliSense process crash. Setting C_Cpp.intelliSenseCacheSize to 0 is a workaround. #5923