microsoft / vscode-cpptools

Official repository for the Microsoft C/C++ extension for VS Code.
Other
5.4k stars 1.51k forks source link

Intellisense randomly failing in MacOS #7143

Closed dengyaotriangle closed 3 years ago

dengyaotriangle commented 3 years ago

Type: LanguageService

Describe the bug

Trying to edit any code cause the language provider to fail.

[2021-03-10 23:33:00.726] [exthost] [error] [ms-vscode.cpptools] provider FAILED
[2021-03-10 23:33:00.726] [exthost] [error] undefined
[2021-03-10 23:33:48.726] [exthost] [error] [ms-vscode.cpptools] provider FAILED
[2021-03-10 23:33:48.726] [exthost] [error] undefined
[2021-03-10 23:33:49.966] [exthost] [error] [ms-vscode.cpptools] provider FAILED
[2021-03-10 23:33:49.966] [exthost] [error] undefined

In some cases, the extension still works fine after the error. But sometimes stuck and stop to function. The latter case happen more often with computer with weaker performance or when the system is under load.

Steps to reproduce

c_cpp_config:

{
    "configurations": [
        {
            "name": "Mac",
            "includePath": [
                "${workspaceFolder}"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/System/Library/Frameworks",
                "/Library/Frameworks"
            ],
            "compilerPath": "/usr/local/bin/g++-10",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "macos-gcc-x64",
            "compilerArgs": [
                "-D dengyaotriangle",
                "-I '${workspaceRoot}/'"
            ]
        }
    ],
    "version": 4
}
Logs ``` -------- Diagnostics - 3/10/2021, 11:31:14 PM Version: 1.2.2 Current Configuration: { "name": "Mac", "includePath": [ "${workspaceFolder}" ], "defines": [], "macFrameworkPath": [ "/System/Library/Frameworks", "/Library/Frameworks" ], "compilerPath": "/usr/local/bin/g++-10", "cStandard": "c17", "cppStandard": "c++17", "intelliSenseMode": "macos-gcc-x64", "compilerArgs": [ "-D dengyaotriangle", "-I '${workspaceRoot}/'" ], "intelliSenseModeIsExplicit": true, "cStandardIsExplicit": true, "cppStandardIsExplicit": true, "compilerPathIsExplicit": true, "browse": { "path": [], "limitSymbolsToIncludedHeaders": true } } Translation Unit Mappings: [ /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp ]: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp Translation Unit Configurations: [ /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp ]: Process ID: 30484 Memory Usage: 81 MB Compiler Path: /usr/local/bin/g++-10 Includes: /Users/dengyaotriangle/Desktop/C++/triangle-polygon /usr/local/Cellar/gcc/10.2.0_4/include/c++/10.2.0 /usr/local/Cellar/gcc/10.2.0_4/include/c++/10.2.0/x86_64-apple-darwin19 /usr/local/Cellar/gcc/10.2.0_4/include/c++/10.2.0/backward /usr/local/Cellar/gcc/10.2.0_4/lib/gcc/10/gcc/x86_64-apple-darwin19/10.2.0/include /usr/local/Cellar/gcc/10.2.0_4/lib/gcc/10/gcc/x86_64-apple-darwin19/10.2.0/include-fixed /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks Frameworks: /System/Library/Frameworks /Library/Frameworks Defines: dengyaotriangle Standard Version: c++17 IntelliSense Mode: macos-gcc-x64 Other Flags: --g++ --gnu_version=100200 Total Memory Usage: 81 MB ------- Workspace parsing diagnostics ------- Number of folders and files enumerated: 9749 Number of files discovered (not excluded): 9388 cpptools/activeDocumentChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange cpptools/textEditorSelectionChange 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange cpptools/finishUpdateSquiggles 错误波形曲线计数: 0 更新 IntelliSense 时间(秒): 0.258 cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 663) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 664) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 665) textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange textDocument/completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 666) auto_complete::handle_completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (7:7) 提供完成 正在向服务器发送 1 项更改 正在终止子进程: 35113 textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange completionItem/resolve (id: 667) 正在向服务器发送 1 项更改 已取消请求: 667 textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange completionItem/resolve (id: 668) 正在向服务器发送 1 项更改 textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 670) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 671) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 672) cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/getDocumentSymbols: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 673) cpptools/getDocumentSymbols 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/finishUpdateSquiggles 错误波形曲线计数: 2 更新 IntelliSense 时间(秒): 1.505 cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 674) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 675) cpptools/activeDocumentChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/finishUpdateSquiggles 错误波形曲线计数: 2 更新 IntelliSense 时间(秒): 0.257 cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 676) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 677) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 678) Database safe to open cpptools/activeDocumentChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange cpptools/textEditorSelectionChange 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange cpptools/finishUpdateSquiggles 错误波形曲线计数: 2 更新 IntelliSense 时间(秒): 0.256 cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 679) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 680) cpptools/textEditorSelectionChange cpptools/textEditorSelectionChange cpptools/textEditorSelectionChange textDocument/documentHighlight: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 681) cpptools/textEditorSelectionChange cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 682) textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 684) textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange textDocument/completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 685) auto_complete::handle_completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (7:7) 提供完成 正在向服务器发送 1 项更改 正在向服务器发送 1 项更改 正在向服务器发送 1 项更改 正在向服务器发送 1 项更改 cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 687) textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/abortRequest cpptools/textEditorSelectionChange textDocument/completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 688) auto_complete::handle_completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (7:8) 提供完成 正在向服务器发送 1 项更改 textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp completionItem/resolve (id: 689) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 690) cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 691) 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange completionItem/resolve (id: 692) 正在向服务器发送 1 项更改 cpptools/finishUpdateSquiggles 错误波形曲线计数: 2 textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange completionItem/resolve (id: 694) 正在向服务器发送 1 项更改 cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 695) textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 697) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 698) cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange completionItem/resolve (id: 699) 正在向服务器发送 1 项更改 textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange 正在向服务器发送 1 项更改 cpptools/finishUpdateSquiggles 错误波形曲线计数: 2 cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 702) 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange textDocument/completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 703) auto_complete::handle_completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (7:13) 提供完成 正在向服务器发送 1 项更改 textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange textDocument/completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 705) auto_complete::handle_completion: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (7:14) 提供完成 正在向服务器发送 1 项更改 cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 707) textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 708) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 709) cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/finishUpdateSquiggles 错误波形曲线计数: 2 cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 710) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 711) 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/getDocumentSymbols: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 712) cpptools/getDocumentSymbols cpptools/finishUpdateSquiggles 错误波形曲线计数: 2 更新 IntelliSense 时间(秒): 3.907 cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 713) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 714) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 715) textDocument/didChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange textDocument/didSave: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 标记分析文件: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 717) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 718) cpptools/fileChanged: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 719) 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp 正在向服务器发送 1 项更改 cpptools/finishUpdateSquiggles 错误波形曲线计数: 1 cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 720) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 721) cpptools/getDocumentSymbols: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 722) cpptools/getDocumentSymbols 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/finishUpdateSquiggles 错误波形曲线计数: 1 更新 IntelliSense 时间(秒): 1.258 cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 723) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 724) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 725) cpptools/activeDocumentChange: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp cpptools/textEditorSelectionChange 空闲环路: 重新分析活动文档 正在检查语法错误: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp 正在为以下项的翻译单元中文件的 IntelliSense 更新进行排队: /Users/dengyaotriangle/Desktop/C++/triangle-polygon/_trianglepolygon/test.cpp cpptools/finishUpdateSquiggles 错误波形曲线计数: 1 更新 IntelliSense 时间(秒): 0.256 cpptools/getSemanticTokens: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 726) cpptools/getFoldingRanges: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 727) cpptools/getCodeActions: file:///Users/dengyaotriangle/Desktop/C%2B%2B/triangle-polygon/_trianglepolygon/test.cpp (id: 728) Database safe to open ```

Screenshots gif at https://i.loli.net/2021/03/10/o8UTG6wCnhXdWem.gif

magwa101 commented 3 years ago

OSX 10.15.7 Version: 1.54.1 Commit: f30a9b73e8ffc278e71575118b6bf568f04587c8 Date: 2021-03-04T22:42:18.719Z Electron: 11.3.0 Chrome: 87.0.4280.141 Node.js: 12.18.3 V8: 8.7.220.31-electron.0 OS: Darwin x64 19.6.0

Developing UE4 and the "Pawn.cpp" is a generated headerfile with 24 includes that likely cascade.

When looking up a symbol for the first time I see cpptools-srv CPU spike and this:

Shutting down IntelliSense server: /Users/Shared/Epic Games/UE_4.26/Engine/Source/Runtime/Engine/Private/Pawn.cpp terminating child process: 5754 Request canceled: 2543 Error squiggle count: 0 Update IntelliSense time (sec): 45.361

sean-mcmanus commented 3 years ago

@dengyaotriangle The logging

[2021-03-10 23:33:00.726] [exthost] [error] [ms-vscode.cpptools] provider FAILED
[2021-03-10 23:33:00.726] [exthost] [error] undefined

is normal and doesn't indicate a failure. I don't see any failure occurring in your logging. What is the failure you are seeing? If you're seeing it get stuck we may need more repro info, such as a call stack (https://github.com/microsoft/vscode-cpptools/wiki/Attaching-debugger-to-cpptools-or-cpptools%E2%80%90srv) or performance logs (https://github.com/microsoft/vscode-cpptools/wiki/Troubleshooting-Performance-Issues).

@magwa101 Your issue seems unrelated. Can you file a new issue with more repro details? What does "looking up a symbol" mean exactly? Is the cpptool-srv process restarting due to memory usage, e.g. you can try increasing C_Cpp.intelliSenseMemoryLimit?

magwa101 commented 3 years ago

Ok, got it.

Your PCH some logic has issues. I have 2 files PawnTank.h and PawnTank.cpp. If in PawnTank.ccp when I do a look up (hover with

You're building a huge in memory cache structure, then dumping it when the file is closed. I recommend some sort've memory mapped DB that is local plus better cache invalidation logic.

The UE4 tutorial "Toon Tanks" is here https://gitlab.com/GameDevTV/UnrealCourse/ToonTanks. Install UE4, clone "Toon Tanks", build and step around, you'll see.

I didn't want this to be a career move so I'm going to live with what I've got.

I switched C_Cpp Tag Parser and for the time being, it works like a charm.

dengyaotriangle commented 3 years ago

@dengyaotriangle The logging

[2021-03-10 23:33:00.726] [exthost] [error] [ms-vscode.cpptools] provider FAILED
[2021-03-10 23:33:00.726] [exthost] [error] undefined

is normal and doesn't indicate a failure. I don't see any failure occurring in your logging. What is the failure you are seeing? If you're seeing it get stuck we may need more repro info, such as a call stack (https://github.com/microsoft/vscode-cpptools/wiki/Attaching-debugger-to-cpptools-or-cpptools%E2%80%90srv) or performance logs (https://github.com/microsoft/vscode-cpptools/wiki/Troubleshooting-Performance-Issues).

@magwa101 Your issue seems unrelated. Can you file a new issue with more repro details? What does "looking up a symbol" mean exactly? Is the cpptool-srv process restarting due to memory usage, e.g. you can try increasing C_Cpp.intelliSenseMemoryLimit?

It‘s spitting out "error" messages so I mistakenly assumed that they are related. It does not get stuck too often. When it got stuck, the intellisense info does not get updated. Here's a screenshot.

截屏2021-03-12 上午11.07.30.png

I've changed the code but the error information still shows the error before the change.

the process cpptools-srv have 0% cpu usages after it got stuck.

dengyaotriangle commented 3 years ago

It is maybe same as #7118. But I do not know the steps to reproduce. It randomly happens while editing code normally.

sean-mcmanus commented 3 years ago

@dengyaotriangle Yes, if you're seeing errors not updating after editing, that would be the same as https://github.com/microsoft/vscode-cpptools/issues/7118 . Unfortunately, we're not sure yet how to fix that yet and/or how to more reliably repro the issue. I debugged it when I was reproed it one time and saw it was in a state where it mistakenly thought it was in the middle of an update so it was aborting the valid update request, but I don't know how it got into that state. I think we need to find some better repro steps.

github-actions[bot] commented 3 years ago

This issue has been closed automatically because it needs more information and has not had recent activity.