Skip to content

Commit 6516396

Browse files
authored
Merge pull request #10679 from microsoft/main
Merge for 1.15.0
2 parents edf8e0a + e201d79 commit 6516396

File tree

108 files changed

+1721
-521
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

108 files changed

+1721
-521
lines changed

Build/loc/TranslationsImportExport.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ pool:
2424
- ImageOverride -equals AzurePipelinesWindows2022compliant
2525

2626
steps:
27+
- task: NodeTool@0
28+
inputs:
29+
versionSpec: '16.x'
30+
displayName: 'Install Node.js'
31+
2732
- task: CmdLine@2
2833
inputs:
2934
script: 'cd Extension && yarn install'

Extension/CHANGELOG.md

Lines changed: 57 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,94 @@
11
# C/C++ for Visual Studio Code Changelog
22

3-
## Version 1.14.2: February 9, 2023
3+
## Version 1.15.0: March 15, 2023
44
### Enhancements
5-
* Add error messages for Create Declaration / Definition. [#10163](https://github.com/microsoft/vscode-cpptools/issues/10163)
6-
* Follow up changes to the new status UI. [#10413](https://github.com/microsoft/vscode-cpptools/issues/10413)
7-
* Add Ada to supported languages for debugging. [#10475](https://github.com/microsoft/vscode-cpptools/issues/10475)
8-
* Anthony Leonardo Gracio (@AnthonyLeonardoGracio) [PR #10476](https://github.com/microsoft/vscode-cpptools/pull/10476)
5+
* Support multiple natvis files in `visualizerFile`. [#925](https://github.com/microsoft/vscode-cpptools/issues/925)
6+
* Enable error squiggles for single file mode if includes resolve. [#10062](https://github.com/microsoft/vscode-cpptools/issues/10062)
7+
* Improve the description of the `C_Cpp.codeAnalysis.clangTidy.enabled` setting. [#10454](https://github.com/microsoft/vscode-cpptools/issues/10454)
8+
* Add a 'Select Default Compiler' code action and error message for standard headers which can't be found. [#10531](https://github.com/microsoft/vscode-cpptools/issues/10531)
9+
* Change the 'Edit "includePath" setting' code action to reference "compilerPath" for missing system includes. [#10675](https://github.com/microsoft/vscode-cpptools/issues/10675)
910

1011
### Bug Fixes
11-
* Show a reload prompt after `C_Cpp.hover` is changed. [#10076](https://github.com/microsoft/vscode-cpptools/issues/10076)
12-
* Fix a crash with empty PATH entries on Linux/Mac.
12+
* Enable `-fms-extensions` by default for Cygwin and MinGW. [#8353](https://github.com/microsoft/vscode-cpptools/issues/8353)
13+
* Fix incorrect, excessive logging with compile commands. [#9865](https://github.com/microsoft/vscode-cpptools/issues/9865)
14+
* Fix IntelliSense errors with C++ 20 range and span. [#10024](https://github.com/microsoft/vscode-cpptools/issues/10024)
15+
* Fix 'Create Declaration / Definition' making modifications to files outside the workspace folder. [#10402](https://github.com/microsoft/vscode-cpptools/issues/10402)
16+
* Fix code analysis when `--use-color=true` is used. [#10407](https://github.com/microsoft/vscode-cpptools/issues/10407)
17+
* Fix IntelliSense errors with CUDA. [#10455](https://github.com/microsoft/vscode-cpptools/issues/10455)
18+
* Fix random save failures while code analysis is running on the saved file. [#10482](https://github.com/microsoft/vscode-cpptools/issues/10482)
19+
* Fix the compile commands prompt setting `compileCommands` to a `compile_commands.json` in a different workspace folder. [#10588](https://github.com/microsoft/vscode-cpptools/issues/10588)
20+
* Fix code analysis with `_Float16`. [#10610](https://github.com/microsoft/vscode-cpptools/issues/10610)
21+
* Fix code analysis with c23/gnu23. [#10615](https://github.com/microsoft/vscode-cpptools/issues/10615)
22+
* Fix 'Reset IntelliSense Database' being delayed until parsing is finished. [#10616](https://github.com/microsoft/vscode-cpptools/issues/10616)
23+
* Fix uncaught exception with some configuration providers. [PR #10629](https://github.com/microsoft/vscode-cpptools/pull/10629)
24+
* Fix bugs with the "You do not have IntelliSense configured" prompt. [#10658](https://github.com/microsoft/vscode-cpptools/issues/10658), [#10659](https://github.com/microsoft/vscode-cpptools/issues/10659)
25+
* Fix random failures when adding or removing workspace folders. [PR #10665](https://github.com/microsoft/vscode-cpptools/pull/10665)
26+
* Fix missing clang-tidy checks setting values. [#10667](https://github.com/microsoft/vscode-cpptools/issues/10667)
27+
* Fix 'Select Default Compiler' so that it works if it's already set in the workspace or workspace folder settings. [#10674](https://github.com/microsoft/vscode-cpptools/issues/10674)
28+
* Fix clang-tidy 'clang-analyzer-' documentation links not working. [#10678](https://github.com/microsoft/vscode-cpptools/issues/10678)
29+
* Fix `__GXX_RTTI` incorrectly being defined by IntelliSense with clang and `-fms-compatibility`.
30+
* Reduce the likelihood of an `onWillSaveWaitUntil` timeout.
31+
* Fix an IntelliSense crash with C++20 concepts.
32+
* Stop querying clang-cl.exe as C.
33+
34+
## Version 1.14.4: February 28, 2023
35+
### Enhancements
36+
* Add `c23` and `c2x` support for clang and gcc modes. [#7471](https://github.com/microsoft/vscode-cpptools/issues/7471)
37+
* Filter out clang-tidy `#pragma once in main file` warnings. [#10539](https://github.com/microsoft/vscode-cpptools/issues/10539)
38+
* Auto-configure `configurationProvider` even if `default.compilerPath` is set. [PR #10607](https://github.com/microsoft/vscode-cpptools/pull/10607)
1339

14-
## Version 1.14.1: February 2, 2023
40+
### Bug Fixes
41+
* Fix `--` in args making compiler querying fail. [#10529](https://github.com/microsoft/vscode-cpptools/issues/10529)
42+
* Fix every .C file being opened in a compile_commands.json if it's build for C++. [#10540](https://github.com/microsoft/vscode-cpptools/issues/10540)
43+
* Fix `-std=c++` not being used in compile_commands.json for .C files. [#10541](https://github.com/microsoft/vscode-cpptools/issues/10541)
44+
* Fix a crash when an error occurs in a forced include. [#10598](https://github.com/microsoft/vscode-cpptools/issues/10598)
45+
* Fix the configuration provider browse cache not getting cleared. [PR #10608](https://github.com/microsoft/vscode-cpptools/pull/10608)
46+
* Fix a bug that could cause IntelliSense to randomly stop updating.
47+
* Fix some random failures that could happen during database deletion.
48+
* Fix some random crashes on shutdown.
49+
50+
## Version 1.14.3: February 14, 2023
1551
### New Features
1652
* Add recursive macro expansion on hover. [#3579](https://github.com/microsoft/vscode-cpptools/issues/3579)
1753
* Move status bar items to the language status UI. [#8405](https://github.com/microsoft/vscode-cpptools/issues/8405)
18-
* Add the Select Default Compiler command that lets you choose a default compiler to configure IntelliSense. [#10027](https://github.com/microsoft/vscode-cpptools/issues/10027)
54+
* This may not be enabled for all users unless `C_Cpp.experimentalFeatures` is `true`.
55+
* Add the 'Select Default Compiler' command that lets you choose a default compiler to configure IntelliSense. [#10027](https://github.com/microsoft/vscode-cpptools/issues/10027)
1956

2057
### Enhancements
2158
* Exclude rename results external to the workspace. [#9235](https://github.com/microsoft/vscode-cpptools/issues/9235)
22-
* Reorder commands in the code action context menu. [#10400](https://github.com/microsoft/vscode-cpptools/issues/10400)
23-
24-
### Bug Fixes
25-
* Fix Create Declaration / Definition with an anonymous namespace. [#10189](https://github.com/microsoft/vscode-cpptools/issues/10189)
26-
* Potential fix for cpptools getting shutdown after waking up from sleep. [#10362](https://github.com/microsoft/vscode-cpptools/issues/10362)
27-
* Fix the process id picker only showing part of the process on a remote machine. [#10379](https://github.com/microsoft/vscode-cpptools/issues/10379)
28-
* Fix temp files generating at the incorrect path. [#10386](https://github.com/microsoft/vscode-cpptools/issues/10386)
29-
* Fix a crash in extractArgs. [PR #10394](https://github.com/microsoft/vscode-cpptools/pull/10394)
30-
31-
## Version 1.14.0: January 12, 2023
32-
### Enhancements
59+
* Add error messages for Create Declaration / Definition. [#10163](https://github.com/microsoft/vscode-cpptools/issues/10163)
3360
* Add support for LLVM-based Intel C/C++ compilers. [#10218](https://github.com/microsoft/vscode-cpptools/issues/10218)
3461
* SSH output improvements. [PR #10292](https://github.com/microsoft/vscode-cpptools/pull/10292)
62+
* Reorder commands in the code action context menu. [#10400](https://github.com/microsoft/vscode-cpptools/issues/10400)
63+
* Add Ada to supported languages for debugging. [#10475](https://github.com/microsoft/vscode-cpptools/issues/10475)
64+
* Anthony Leonardo Gracio (@AnthonyLeonardoGracio) [PR #10476](https://github.com/microsoft/vscode-cpptools/pull/10476)
3565

3666
### Bug Fixes
3767
* Fix usage of relative paths in IntelliSense configuration settings with multi-root workspaces. [#4983](https://github.com/microsoft/vscode-cpptools/issues/4983)
3868
* Fix infinite recursion in scout_parser. [#8898](https://github.com/microsoft/vscode-cpptools/issues/8898)
3969
* Fix an IntelliSense crash with the seqan3 library. [#8956](https://github.com/microsoft/vscode-cpptools/issues/8956)
4070
* Fix looping between C and C++. [#9689](https://github.com/microsoft/vscode-cpptools/issues/9689)
4171
* Fix Doxygen comments for the function signature being autogenerated when typing inside a function. [#9742](https://github.com/microsoft/vscode-cpptools/issues/9742)
72+
* Show a reload prompt after `C_Cpp.hover` is changed. [#10076](https://github.com/microsoft/vscode-cpptools/issues/10076)
4273
* Fix function inlay hints not working with `std::string_literal` arguments. [#10078](https://github.com/microsoft/vscode-cpptools/issues/10078)
4374
* Fix IntelliSense completion for `std::string` with `?:` and `string()`. [#10103](https://github.com/microsoft/vscode-cpptools/issues/10103)
4475
* Fix semantic colorization not working in a certain case. [#10105](https://github.com/microsoft/vscode-cpptools/issues/10105)
4576
* Fix IntelliSense completion not working inside constructor calls that are incomplete. [#10111](https://github.com/microsoft/vscode-cpptools/issues/10111)
4677
* Fix changes to the enclosing type not being taken into account after "Create Declaration / Definition" is used once. [#10162](https://github.com/microsoft/vscode-cpptools/issues/10162)
4778
* Fix "False positive expression must have a constant value with __builtin_choose_expr in _Static_assert". [#10168](https://github.com/microsoft/vscode-cpptools/issues/10168)
79+
* Fix Create Declaration / Definition with an anonymous namespace. [#10189](https://github.com/microsoft/vscode-cpptools/issues/10189)
4880
* Fix file exclusions not being applied to the first directory found for each browse.path entry. [#10205](https://github.com/microsoft/vscode-cpptools/issues/10205)
4981
* Fix IntelliSense mode auto-detection for VS 2015 compiler paths. [#10207](https://github.com/microsoft/vscode-cpptools/issues/10207)
5082
* Fix clang-cl 15 querying with /WX. [#10221](https://github.com/microsoft/vscode-cpptools/issues/10221)
5183
* Fix an incorrect IntelliSense error with `std::bind`, c++17, and windows-msvc-arm64 mode. [#10304](https://github.com/microsoft/vscode-cpptools/issues/10304)
5284
* Fix vcFormat when using lambda functions. [#10326](https://github.com/microsoft/vscode-cpptools/issues/10326)
5385
* Fix IntelliSense crash in field_for_lambda_capture. [#10359](https://github.com/microsoft/vscode-cpptools/issues/10359)
86+
* Fix for cpptools getting shutdown after waking up from sleep. [#10362](https://github.com/microsoft/vscode-cpptools/issues/10362)
5487
* Fix an IntelliSense crash when using the French language pack. [#10374](https://github.com/microsoft/vscode-cpptools/issues/10374)
88+
* Fix the process id picker only showing part of the process on a remote machine. [#10379](https://github.com/microsoft/vscode-cpptools/issues/10379)
89+
* Fix temp files generating at the incorrect path. [#10386](https://github.com/microsoft/vscode-cpptools/issues/10386)
90+
* Fix a crash in extractArgs. [PR #10394](https://github.com/microsoft/vscode-cpptools/pull/10394)
91+
* Fix a bug with settings changes not being handled correctly for multiroot. [PR #10458](https://github.com/microsoft/vscode-cpptools/pull/10458)
5592

5693
## Version 1.13.9: January 4, 2023
5794
### Bug Fix

Extension/bin/messages/de/messages.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1695,8 +1695,8 @@
16951695
null,
16961696
"Für die Vektoroperation sind identische Elementtypen erforderlich.",
16971697
"Die Vektoroperation gilt nicht für Vektoren mit nicht integralem Typ.",
1698-
"Die Datei \"%s\" kann nicht geöffnet werden: %sq2.",
1699-
"Die -Datei \"%s\" kann nicht geöffnet werden: %sq2: %s3.",
1698+
"Die Datei %s kann nicht geöffnet werden: %sq2.",
1699+
"Die -Datei %s kann nicht geöffnet werden: %sq2: %s3.",
17001700
"Vorkompilierte Headerdatei",
17011701
"Vordefiniertes Makro",
17021702
"Generierter C-Code",

Extension/c_cpp_properties.schema.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,12 @@
3636
"c99",
3737
"c11",
3838
"c17",
39+
"c23",
3940
"gnu89",
4041
"gnu99",
4142
"gnu11",
4243
"gnu17",
44+
"gnu23",
4345
"${default}"
4446
]
4547
},

Extension/i18n/chs/c_cpp_properties.schema.json.i18n.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
{
77
"c_cpp_properties.schema.json.definitions.configurations.items.properties.name": "配置标识符。 `Mac`、`Linux` 和 `Win32` 是将在这些平台上自动选择的配置的特殊标识符,但标识符可以为任何内容。",
88
"c_cpp_properties.schema.json.definitions.configurations.items.properties.compilerPath": "正在使用的编译器的完整路径(例如 `/usr/bin/gcc`),以启用更准确的 IntelliSense。",
9-
"c_cpp_properties.schema.json.definitions.configurations.items.properties.compilerArgs": "用于修改使用的包含或定义的编译器参数,例如 `-nostdinc++`、`-m32` 等。",
9+
"c_cpp_properties.schema.json.definitions.configurations.items.properties.compilerArgs": "用于修改所使用的包含或定义的编译器参数,例如 `-nostdinc++`、`-m32` 等。采用其他空格分隔参数的参数应在数组中作为单独的参数输入,例如,对于`--sysroot <arg>`使用`\"--sysroot\", \"<arg>\"`",
1010
"c_cpp_properties.schema.json.definitions.configurations.items.properties.cStandard": "用于 IntelliSense 的 C 语言标准的版本。注意: GNU 标准仅用于查询设置编译器以获取 GNU 定义,并且 IntelliSense 将模拟等效的 C 标准版本。",
1111
"c_cpp_properties.schema.json.definitions.configurations.items.properties.cppStandard": "用于 IntelliSense 的 C++ 语言标准的版本。注意: GNU 标准仅用于查询设置用来获取 GNU 定义的编译器,并且 IntelliSense 将模拟等效的 C++ 标准版本。",
1212
"c_cpp_properties.schema.json.definitions.configurations.items.properties.compileCommands": "工作区的 `compile_commands.json` 文件的完整路径。",

Extension/i18n/chs/package.i18n.json

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"c_cpp.command.configurationProviderSelect.title": "更改配置提供程序...",
1717
"c_cpp.command.configurationEditJSON.title": "编辑配置(JSON)",
1818
"c_cpp.command.configurationEditUI.title": "编辑配置(UI)",
19+
"c_cpp.command.selectDefaultCompiler.title": "选择默认编译器",
1920
"c_cpp.command.switchHeaderSource.title": "切换标头/源",
2021
"c_cpp.command.enableErrorSquiggles.title": "启用错误波形曲线",
2122
"c_cpp.command.disableErrorSquiggles.title": "禁用错误波形曲线",
@@ -65,7 +66,7 @@
6566
"c_cpp.configuration.codeAnalysis.excludeBoolean.markdownDescription": "要与文件路径匹配的 glob 模式。设置为 `true` 或 `false` 以启用或禁用模式。",
6667
"c_cpp.configuration.codeAnalysis.excludeWhen.markdownDescription": "对匹配文件同辈进行其他检查。将 `$(basename)` 用作匹配文件名变量。",
6768
"c_cpp.configuration.codeAnalysis.runAutomatically.markdownDescription": "如果为 `true`,则代码分析将在文件打开或保存后自动在文件上运行。",
68-
"c_cpp.configuration.codeAnalysis.clangTidy.codeAction.showDisable.markdownDescription": "如果为`true`,'禁用'代码操作将在可用时显示(下次运行代码分析时)。使用'禁用'代码操作时,它会将警告代码添加到 `C_Cpp.codeAnalysis.clangTidy.checks.disabled`设置。",
69+
"c_cpp.configuration.codeAnalysis.clangTidy.codeAction.showDisable.markdownDescription": "如果为 `true`,'禁用'代码操作将在可用时显示(下次运行代码分析时)。使用'禁用'代码操作时,它会将警告代码添加到 `C_Cpp.codeAnalysis.clangTidy.checks.disabled` 设置。",
6970
"c_cpp.configuration.codeAnalysis.clangTidy.codeAction.showDocumentation.markdownDescription": "如果为 `true`,“显示文档”代码操作将在可用时显示(下次运行代码分析时)。",
7071
"c_cpp.configuration.codeAnalysis.clangTidy.codeAction.showClear.description": "控制哪些“清除”代码分析问题代码操作选项可用。更改设置以显示更多选项可能需要重新运行代码分析。",
7172
"c_cpp.configuration.codeAnalysis.clangTidy.codeAction.showClear.None.description": "不显示“清除”代码操作。",
@@ -400,9 +401,9 @@
400401
"c_cpp.semanticTokenTypes.stringLiteral.description": "C++ 用户定义文本字符串的样式。",
401402
"c_cpp.semanticTokenModifiers.global.description": "用于全局符号的样式。",
402403
"c_cpp.semanticTokenModifiers.local.description": "用于本地符号的样式。",
403-
"c_cpp.debuggers.logging.natvisDiagnostics.description": "Optional flag to determine whether diagnostic natvis messages should be logged to the Debug Console. Defaults to None.",
404-
"c_cpp.debuggers.logging.category.verbose.description": "Logs that are used for interactive investigation during development. These logs should primarily contain information useful for debugging and have no long-term value.",
405-
"c_cpp.debuggers.logging.category.warning.description": "Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the application execution to stop.",
406-
"c_cpp.debuggers.logging.category.error.description": "Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a failure in the current activity, not an application-wide failure.",
407-
"c_cpp.debuggers.logging.category.none.description": "Not used for writing log messages. Specifies that a logging category should not write any messages."
404+
"c_cpp.debuggers.logging.natvisDiagnostics.description": "可选标志,用于确定是否应将诊断 natvis 消息记录到调试控制台。默认为 None",
405+
"c_cpp.debuggers.logging.category.verbose.description": "开发期间用于交互式调查的日志。这些日志应主要包含可用于调试的信息,并且不具有长期价值。",
406+
"c_cpp.debuggers.logging.category.warning.description": "突出显示应用程序流中的异常或意外事件,但不会导致应用程序执行停止的日志。",
407+
"c_cpp.debuggers.logging.category.error.description": "在当前执行流因失败而停止时突出显示的日志。这些应指示当前活动中的失败,而不是应用程序范围的失败。",
408+
"c_cpp.debuggers.logging.category.none.description": "不用于写入日志消息。指定事件日志类别不应写入任何消息。"
408409
}

Extension/i18n/chs/src/LanguageServer/client.i18n.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,16 @@
66
{
77
"unable.to.start": "无法启动 C/C++ 语言服务器。IntelliSense 功能将被禁用。错误: {0}",
88
"check.permissions": "EPERM: 检查“{0}”的权限",
9+
"select.compile.commands": "选择要为 IntelliSense 配置的编译器",
10+
"found.string": "在 {0} 找到",
11+
"setCompiler.message": "未配置编译器。除非设置自己的配置,否则 IntelliSense 可能无法正常工作。",
12+
"selectCompiler.string": "选择编译器",
13+
"selectAnotherCompiler.string": "在我的计算机上选择另一个编译器",
14+
"installCompiler.string": "帮助我安装编译器",
15+
"noConfig.string": "请勿配置编译器(不推荐)",
16+
"confirmCompiler.string": "",
17+
"selectCompiler.message": "已找到编译器 {0}。是否要使用此编译器配置 IntelliSense?",
18+
"server.crashed.restart": "语言服务器崩溃。正在重新启动...",
919
"server.crashed2": "在过去 3 分钟内,语言服务器崩溃了 5 次。它不会重新启动。",
1020
"loggingLevel.changed": "{0} 已更改为: {1}",
1121
"provider.configure.folder": "{0} 想要为“{1}”文件夹配置 IntelliSense。",

0 commit comments

Comments
 (0)