microsoft / vscode-cpptools

Official repository for the Microsoft C/C++ extension for VS Code.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

outline view doesn't keep updated when adding/removing code

kuhdav opened this issue · comments

Type: Bug

Adding or remofing chunks of code confuse the outline view so that when I click on a function or whatever the cursor, in the editor view moves in a wrong position

Extension version: 1.19.9
VS Code version: Code 1.88.1 (e170252f762678dec6ca2cc69aba1570769a5d39, 2024-04-10T17:41:02.734Z)
OS version: Windows_NT x64 10.0.22631
Modes:

System Info
Item Value
CPUs 11th Gen Intel(R) Core(TM) i5-11400 @ 2.60GHz (12 x 2592)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
Load (avg) undefined
Memory (System) 7.78GB (1.77GB free)
Process Argv --crash-reporter-id fbe9f9e5-fb28-400f-82ea-044a66386e68
Screen Reader no
VM 0%
A/B Experiments
vsliv368cf:30146710
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscorecescf:30445987
vscod805cf:30301675
binariesv615:30325510
vsaa593:30376534
py29gd2263:31024239
c4g48928:30535728
azure-dev_surveyone:30548225
962ge761:30959799
pythongtdpath:30769146
welcomedialog:30910333
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
pythontestfixt:30902429
pythonregdiag2:30936856
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
h48ei257:31000450
pythontbext0:30879054
accentitlementsc:30995553
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
cppperfnew:31000557
d34g3935:30971562
fegfb526:30981948
bg6jg535:30979843
ccp2r3:30993541
dsvsc020:30976470
pythonait:31006305
gee8j676:31009558
chatpanelc:31018788
dsvsc021:30996838
724cj586:31013169
pythoncenvpt:31022790

If you set C_Cpp.loggingLevel to "Debug" you should see logging like that below after adding characters to a function name and waiting for the Outline view to update:

LSP: (received) cpptools/getDocumentSymbols: file
LSP: (invoked) cpptools/getDocumentSymbols: file
  tag parsing file: 
LSP: Sending response (id: 35)
Intellisense update pending for: file
IntelliSense update scheduled and TU acquisition started for: file
sending 1 changes to server
Update IntelliSense time (sec): 
LSP: (received) cpptools/getDocumentSymbols: file
LSP: (invoked) cpptools/getDocumentSymbols: file

Do you get different results? The "tag parsing file" is required to update the database and getDocumentSymbols is required to update the Outline view with the result.