microsoft / microsoft/vscode-cpptools

IntelliSense gets stuck on Parsing workspace files, usually between 20% to 40%.

Offen
#12,830 6 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug Language Service performance Visual Studio
Vorherrschende Sprache
TypeScript
Sterne
6.2k
Forks
1.7k
Ø Merge
14 Std. 46 Min.
Gemergte PRs (30 T.)
61

Beschreibung

Environment
  • OS and Version: Windows 11 [10.0.22631.4317]
  • VS Code Version: 1.94.0, 1.94.2 (tested both)
  • C/C++ Extension Version: 1.21.6
Bug Summary and Steps to Reproduce

Bug Summary:

I created a simple project to try the Tracy profiler (https://github.com/wolfpld/tracy).

  • Tracy added as a submodule
  • Created a Makefile with one target and two source files: main.cpp and TracyProfiler.cpp
  • The compiler is MSVC, and VSCode is launched through the Developer Command Prompt for VS 2022
  • The Makefile Tools extension is used as the configuration provider, but disabling it makes no noticeable difference

Steps to Reproduce:

  1. Start VSCode and open my workspace
  2. IntelliSense begins parsing, and I can see it becoming active as I follow the paths
  3. It gets stuck halfway through (or earlier; it's random) and becomes unresponsive

Image

My project files (without tracy repo)
tracy-test.zip

Full logs
logs.zip

Expected Behavior:

IntelliSense should successfully finish parsing and continue working as expected.

Configuration and Logs

-------- Diagnostics - 10/10/2024, 9:54:32 PM
Version: 1.21.6
Current Configuration:
{
"name": "Win32",
"includePath": [
"c:/Developement/tracy-test/",
"c:/Developement/tracy-test/tracy/public/tracy/
"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "10.0.19041.0",
"compilerPath": "cl.exe",
"cStandard": "c17",
"cppStandard": "c++17",
"compilerPathInCppPropertiesJson": "cl.exe",
"intelliSenseMode": "msvc-x64",
"intelliSenseModeIsExplicit": true,
"cStandardIsExplicit": false,
"cppStandardIsExplicit": false,
"mergeConfigurations": true,
"compilerPathIsExplicit": false,
"configurationProvider": "ms-vscode.makefile-tools",
"browse": {
"path": [
"c:/Developement/tracy-test/",
"c:/Developement/tracy-test/tracy/public/tracy/
",
"${workspaceFolder}"
],
"limitSymbolsToIncludedHeaders": true
}
}
cpptools version (native): 1.21.6.0
Translation Unit Mappings:
[ C:\Developement\tracy-test\main.cpp - source TU]:
Translation Unit Configurations:
[ C:\Developement\tracy-test\main.cpp ]:
Process ID: 10752
Memory Usage: 167 MB
Compiler Path: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\bin\Hostx64\x64\cl.exe
Includes:
C:\Developement\tracy-test
C:\Developement\tracy-test\tracy\public\tracy
System Includes:
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\include
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\atlmfc\include
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\winrt
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\cppwinrt
Defines:
TRACY_ENABLE
_DEBUG
UNICODE
_UNICODE
Standard Version: ms_c++17
IntelliSense Mode: windows-msvc-x64
Total Memory Usage: 167 MB

------- Workspace parsing diagnostics -------
Number of files discovered (not excluded): 5293

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, den Hänger beim Parsen des Workspace mit dem angehängten Projekt tracy-test.zip zu reproduzieren, und untersuche das angehängte logs.zip, wobei du die gemeldete Konfiguration und die Diagnosen als Grundlage verwendest. Als erledigt gilt die Aufgabe, wenn IntelliSense das Parsen abschließt, anstatt zwischen etwa 20 % und 40 % nicht mehr zu reagieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp
Bereich
tooling
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.