From 358f70c0ecbea082553eb043a9e71e6dedf92052 Mon Sep 17 00:00:00 2001 From: Bob Brown Date: Thu, 9 Oct 2025 10:16:58 -0700 Subject: [PATCH 1/4] Fix some invalid assumptions for tasks (#13989) --- Extension/src/LanguageServer/cppBuildTaskProvider.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Extension/src/LanguageServer/cppBuildTaskProvider.ts b/Extension/src/LanguageServer/cppBuildTaskProvider.ts index de08d6e43..33227c14e 100644 --- a/Extension/src/LanguageServer/cppBuildTaskProvider.ts +++ b/Extension/src/LanguageServer/cppBuildTaskProvider.ts @@ -245,7 +245,7 @@ export class CppBuildTaskProvider implements TaskProvider { const cppBuildTask: CppBuildTask = new Task(definition, TaskScope.Workspace, task.label, ext.CppSourceStr); cppBuildTask.detail = task.detail; cppBuildTask.existing = true; - if (task.group.isDefault) { + if (!util.isString(task.group) && task.group.isDefault) { cppBuildTask.isDefault = true; } return cppBuildTask; @@ -292,9 +292,9 @@ export class CppBuildTaskProvider implements TaskProvider { if (setAsDefault) { rawTasksJson.tasks.forEach((task: any) => { if (task.label === selectedTask?.definition.label) { - task.group = { kind: "build", "isDefault": true }; - } else if (task.group.kind && task.group.kind === "build" && task.group.isDefault && task.group.isDefault === true) { - task.group = "build"; + task.group = { kind: "build", isDefault: true }; + } else if (!util.isString(task.group) && task.group?.kind === "build" && task.group?.isDefault) { + task.group.isDefault = false; } }); } @@ -303,7 +303,7 @@ export class CppBuildTaskProvider implements TaskProvider { const newTask: any = { ...selectedTask.definition, problemMatcher: selectedTask.problemMatchers, - group: setAsDefault ? { kind: "build", "isDefault": true } : "build", + group: setAsDefault ? { kind: "build", isDefault: true } : "build", detail: localize("task.generated.by.debugger", "Task generated by Debugger.") }; rawTasksJson.tasks.push(newTask); From eb8afeda81ccb4b1e74d848e1e9477fd36c4fbcd Mon Sep 17 00:00:00 2001 From: Sean McManus Date: Thu, 9 Oct 2025 20:26:43 -0700 Subject: [PATCH 2/4] Update changeling and version for 1.28.2 (#13990) * Update changelog and version for 1.28.2. --- Extension/CHANGELOG.md | 17 ++++++++--------- Extension/package.json | 2 +- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Extension/CHANGELOG.md b/Extension/CHANGELOG.md index f4f4fbceb..684f6d223 100644 --- a/Extension/CHANGELOG.md +++ b/Extension/CHANGELOG.md @@ -1,21 +1,20 @@ # C/C++ for Visual Studio Code Changelog -## Version 1.28.1: October 7, 2025 -### Bug Fixes -* Fix extension activation getting stuck when certain SSH config files are processed (by the SSH targets view feature). [#13966](https://github.com/microsoft/vscode-cpptools/issues/13966) -* Fix document symbols randomly showing previous versions of symbols after they are modified. [#13967](https://github.com/microsoft/vscode-cpptools/issues/13967) -* Prevent .js files from being tag parsed to avoid a crash. [#13980](https://github.com/microsoft/vscode-cpptools/issues/13980) -* A potential fix for a crash. - -## Version 1.28.0: September 25, 2025 +## Version 1.28.2: October 13, 2025 ### Enhancements * Add IntelliSense support for c23 `bool`, `true`, and `false`. [#13737](https://github.com/microsoft/vscode-cpptools/issues/13737) -* Update the bundled `clang-tidy` and `clang-format` from 20.1.7 to 21.1.2. +* Update the bundled `clang-tidy` and `clang-format` from 20.1.7 to 21.1.3. ### Bug Fixes * Fix `cpptools` getting stuck when `clang-format` is invoked on a file in a `.clang-format-ignore`. [#13937](https://github.com/microsoft/vscode-cpptools/issues/13937) * Fix the `C/C++ Properties Schema Reference` link in the configuration UI editor. [#13949](https://github.com/microsoft/vscode-cpptools/issues/13949) * Fix a crash with `preReleaseCheck`. [#13953](https://github.com/microsoft/vscode-cpptools/issues/13953) +* Fix extension activation getting stuck when certain SSH config files are processed (by the SSH targets view feature). [#13966](https://github.com/microsoft/vscode-cpptools/issues/13966) +* Fix document symbols randomly showing previous versions of symbols after they are modified. [#13967](https://github.com/microsoft/vscode-cpptools/issues/13967) +* Prevent tag parsing of .js files to avoid a crash. [#13980](https://github.com/microsoft/vscode-cpptools/issues/13980) +* Fix missing C/C++ keyword completions for newer language standards. [#13982](https://github.com/microsoft/vscode-cpptools/issues/13982) +* Fix some invalid assumptions for cppbuild tasks. [PR #13989](https://github.com/microsoft/vscode-cpptools/pull/13989) +* A potential fix for a crash (involving `line_offset_t`). ## Version 1.27.7: September 18, 2025 ### Enhancements diff --git a/Extension/package.json b/Extension/package.json index 90c7396b4..f0b6b9733 100644 --- a/Extension/package.json +++ b/Extension/package.json @@ -2,7 +2,7 @@ "name": "cpptools", "displayName": "C/C++", "description": "C/C++ IntelliSense, debugging, and code browsing.", - "version": "1.28.1-main", + "version": "1.28.2-main", "publisher": "ms-vscode", "icon": "LanguageCCPP_color_128x.png", "readme": "README.md", From 497c341163820f66defab23a31674ef7d62bbfe3 Mon Sep 17 00:00:00 2001 From: Sean McManus Date: Mon, 13 Oct 2025 09:34:39 -0700 Subject: [PATCH 3/4] Remove llvm from cgmanifest. (#13994) --- Extension/cgmanifest.json | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/Extension/cgmanifest.json b/Extension/cgmanifest.json index 83de24abe..92adbdc44 100644 --- a/Extension/cgmanifest.json +++ b/Extension/cgmanifest.json @@ -1,16 +1,6 @@ { "$schema": "https://json.schemastore.org/component-detection-manifest.json", "Registrations": [ - { - "Component": { - "Type": "git", - "Git": { - "RepositoryUrl": "https://github.com/llvm/llvm-project", - "CommitHash": "0d44201451f03ba907cdb268ddddfc3fa38a0ebd" - }, - "DevelopmentDependency": true - } - }, { "Component": { "Type": "git", From fe0c87360974bd5cdf6622cae1367f58c4f5dc37 Mon Sep 17 00:00:00 2001 From: Sean McManus Date: Mon, 13 Oct 2025 14:06:55 -0700 Subject: [PATCH 4/4] Update changelog. (#13996) --- Extension/CHANGELOG.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Extension/CHANGELOG.md b/Extension/CHANGELOG.md index 684f6d223..6b408146b 100644 --- a/Extension/CHANGELOG.md +++ b/Extension/CHANGELOG.md @@ -1,8 +1,9 @@ # C/C++ for Visual Studio Code Changelog -## Version 1.28.2: October 13, 2025 +## Version 1.28.2: October 14, 2025 ### Enhancements * Add IntelliSense support for c23 `bool`, `true`, and `false`. [#13737](https://github.com/microsoft/vscode-cpptools/issues/13737) +* Add missing C/C++ keyword completions for newer language standards. [#13982](https://github.com/microsoft/vscode-cpptools/issues/13982) * Update the bundled `clang-tidy` and `clang-format` from 20.1.7 to 21.1.3. ### Bug Fixes @@ -12,8 +13,8 @@ * Fix extension activation getting stuck when certain SSH config files are processed (by the SSH targets view feature). [#13966](https://github.com/microsoft/vscode-cpptools/issues/13966) * Fix document symbols randomly showing previous versions of symbols after they are modified. [#13967](https://github.com/microsoft/vscode-cpptools/issues/13967) * Prevent tag parsing of .js files to avoid a crash. [#13980](https://github.com/microsoft/vscode-cpptools/issues/13980) -* Fix missing C/C++ keyword completions for newer language standards. [#13982](https://github.com/microsoft/vscode-cpptools/issues/13982) * Fix some invalid assumptions for cppbuild tasks. [PR #13989](https://github.com/microsoft/vscode-cpptools/pull/13989) +* Fix a random memory corruption and deadlock (involving `task_deque`). * A potential fix for a crash (involving `line_offset_t`). ## Version 1.27.7: September 18, 2025