microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
162.65k stars 28.68k forks source link

TS Server fatal error: Debug Failure. Expected -2 >= 0 #155267

Closed oubenruing closed 2 years ago

oubenruing commented 2 years ago

Issue Type: Bug

❗️❗️❗️ Please fill in the sections below to help us diagnose the issue ❗️❗️❗️

TypeScript Version: 4.7.4

Steps to reproduce crash

  1. I'm editing the .vue file using the 'volar' extension
  2. vscode automatically pops up an alert message

TS Server Log ❗️Server logging disabled. To help us fix crashes like this, please enable logging by setting:

"typescript.tsserver.log": "verbose"

After enabling this setting, future crash reports will include the server log.

TS Server Error Stack Server: semantic

Error: Debug Failure. Expected -2 >= 0
    at assertDiagnosticLocation (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:15098:18)
    at Object.createDetachedDiagnostic (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:19783:9)
    at parseErrorAtPosition (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:31769:29)
    at parseErrorAt (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:31778:20)
    at parseJsxChild (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:35089:25)
    at parseJsxChildren (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:35112:29)
    at parseJsxElementOrSelfClosingElementOrFragment (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:35014:32)
    at parseJsxChild (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:35101:28)
    at parseJsxChildren (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:35112:29)
    at parseJsxElementOrSelfClosingElementOrFragment (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:35014:32)
    at parseUpdateExpression (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:34864:24)
    at parseUnaryExpressionOrHigher (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:34741:40)
    at parseBinaryExpressionOrHigher (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:34618:31)
    at parseBinaryExpressionRest (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:34675:87)
    at parseBinaryExpressionOrHigher (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:34619:20)
    at parseAssignmentExpressionOrHigher (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:34233:24)
    at parseExpression (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:34180:24)
    at doOutsideOfContext (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:31692:20)
    at allowInAnd (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:31714:20)
    at parseExpressionOrLabeledStatement (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:35897:30)
    at parseStatement (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:36140:20)
    at parseListElement (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:32563:20)
    at parseList (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:32548:31)
    at parseSourceFileWorker (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:31490:30)
    at Object.parseSourceFile (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:31324:26)
    at Object.createSourceFile (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:31122:29)
    at Object.createLanguageServiceSourceFile (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:164190:29)
    at acquireOrUpdateDocument (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:135474:37)
    at Object.acquireDocumentWithKey (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:135415:20)
    at getOrCreateSourceFileByPath (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:164598:41)
    at Object.getOrCreateSourceFile [as getSourceFile] (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:164545:24)
    at findSourceFileWorker (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:118104:29)
    at findSourceFile (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:118002:26)
    at d:\ai-sketch\node_modules\typescript\lib\tsserver.js:117954:85
    at getSourceFileFromReferenceWorker (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:117920:34)
    at processSourceFile (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:117954:13)
    at processRootFile (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:117755:13)
    at d:\ai-sketch\node_modules\typescript\lib\tsserver.js:116571:67
    at Object.forEach (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:183:30)
    at Object.createProgram (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:116571:16)
    at synchronizeHostData (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:164475:26)
    at Object.getProgram (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:164607:13)
    at ConfiguredProject.Project.updateGraphWorker (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:169675:53)
    at ConfiguredProject.Project.updateGraph (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:169603:42)
    at ConfiguredProject.updateGraph (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:170717:63)
    at ProjectService.createLoadAndUpdateConfiguredProject (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:172446:25)
    at ProjectService.assignProjectToOpenedScriptInfo (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:173531:44)
    at d:\ai-sketch\node_modules\typescript\lib\tsserver.js:173871:97
    at Object.flatMap (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:508:25)
    at ProjectService.applyChangesInOpenFiles (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:173871:41)
    at Session.handlers.ts.Map.ts.getEntries._a.<computed> (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:175006:46)
    at d:\ai-sketch\node_modules\typescript\lib\tsserver.js:177195:88
    at IpcIOSession.Session.executeWithRequestId (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:177186:28)
    at IpcIOSession.Session.executeCommand (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:177195:33)
    at IpcIOSession.Session.onMessage (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:177221:35)
    at process.<anonymous> (d:\ai-sketch\node_modules\typescript\lib\tsserver.js:179856:31)
    at process.emit (node:events:390:28)
    at emit (node:internal/child_process:917:12)
    at processTicksAndRejections (node:internal/process/task_queues:84:21)

VS Code version: Code 1.69.1 (b06ae3b2d2dbfe28bca3134cc6be65935cdfea6a, 2022-07-12T08:21:24.514Z) OS version: Windows_NT x64 10.0.19044 Restricted Mode: No

System Info |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i5-10400 CPU @ 2.90GHz (12 x 2904)| |GPU Status|2d_canvas: enabled
canvas_oop_rasterization: disabled_off
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_renderer: enabled_on
video_decode: enabled
video_encode: unavailable_off
vulkan: disabled_off
webgl: enabled
webgl2: enabled| |Load (avg)|undefined| |Memory (System)|15.93GB (5.50GB free)| |Process Argv|--crash-reporter-id 8dc9cb3c-d3bc-4a5d-8c91-2b8df03743e8| |Screen Reader|no| |VM|0%|
Extensions (50) Extension|Author (truncated)|Version ---|---|--- iconify|ant|0.3.3 atlascode|atl|2.10.12 tailwind-docs|aus|2.0.0 vscode-changelog-generator|axe|1.0.0 vscode-tailwindcss|bra|0.8.6 gltf-vscode|ces|2.3.16 vscode-markdownlint|Dav|0.47.0 vscode-eslint|dba|2.2.6 githistory|don|0.6.19 gitlens|eam|12.1.2 vscode-html-css|ecm|1.13.0 vsc-material-theme|Equ|33.5.0 vsc-material-theme-icons|equ|2.3.1 copilot|Git|1.31.6194 headwind|hey|1.7.0 vscode-env|Iro|0.1.0 better-cpp-syntax|jef|1.15.19 cmake-language-support-vscode|jos|0.0.4 vscode-language-babel|mgm|0.0.36 git-graph|mhu|1.30.0 code-beautifier|mic|2.3.3 dotenv|mik|1.0.1 vscode-less|mrm|0.6.3 vscode-language-pack-zh-hans|MS-|1.69.7130921 vscode-dotnet-runtime|ms-|1.5.0 remote-containers|ms-|0.241.3 remote-ssh|ms-|0.84.0 remote-ssh-edit|ms-|0.80.0 remote-wsl|ms-|0.66.3 cpptools-extension-pack|ms-|1.2.0 hexeditor|ms-|1.9.7 vscode-typescript-next|ms-|4.8.20220714 env-cmd-file-syntax|Nix|0.3.0 docthis|oou|0.8.2 material-icon-theme|PKi|4.19.0 vscode-commons|red|0.0.6 vscode-yaml|red|1.9.1 vscode-toggleproxy|sat|0.4.6 vscode-stylelint|sty|1.2.2 sass-indented|syl|1.8.22 intellicode-api-usage-examples|Vis|0.1.2 vscodeintellicode|Vis|1.2.22 vscodeintellicode-completions|Vis|1.0.14 vscodeintellicode-insiders|Vis|1.1.10 vscode-conventional-commits|viv|1.24.1 windicss-intellisense|voo|0.21.6 gitmoji-vscode|Vtr|1.0.9 volar|Vue|0.38.5 vscode-typescript-vue-plugin|Vue|0.38.5 material-theme|zhu|3.15.2 (4 theme extensions excluded)
A/B Experiments ``` vsliv368:30146709 vsreu685:30147344 python383:30185418 vspor879:30202332 vspor708:30202333 vspor363:30204092 vslsvsres303:30308271 pythonvspyl392:30443607 vserr242cf:30382550 pythontb:30283811 vsjup518:30340749 pythonvspyt551cf:30345471 pythonptprofiler:30281270 vsdfh931cf:30280410 vshan820:30294714 vstes263:30335439 vscoreces:30445986 pythondataviewer:30285071 vscod805cf:30301675 binariesv615:30325510 bridge0708:30335490 bridge0723:30353136 cmake_vspar411cf:30525689 vsaa593cf:30376535 vsc1dst:30438360 pythonvs932:30410667 wslgetstarted:30449410 vscscmwlcmt:30465135 cppdebug:30492333 pylanb8912:30520716 vsclangdc:30486549 ```
oubenruing commented 2 years ago

I think this is a problem caused by expansions.