panic: Unhandled case in Node.MemberList: KindVariableDeclarationList on merged namespace/enum element access
維護者通常 1 天內回覆
還沒有人認領這個 Issue。
評估
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 新手友好度
- 52/100
- Issue 類型
- 缺陷
- 描述清晰度
- 基本清楚
- 活躍度
- 活躍
- 技術堆疊
- go, typescript
- 領域
- compilers
研究方向
Start by comparing the compiler path that handles merged namespace and enum element access with the related #64668 fix in PR #64746. Reproduce with the provided Foo namespace and enum example, then trace how Node.MemberList handles KindVariableDeclarationList. Done means the compiler no longer panics and reports a type error or handles the case gracefully.
由索引模型根據 Issue 內容生成。
描述
🔎 Search Terms
panic Unhandled case Node.MemberList KindVariableDeclarationList merged namespace enum element access
🕗 Version & Regression Information
This changed between versions 6.0.3 and 7.0.2
⏯ Playground Link
No response
💻 Code
namespace Foo { export const BAR = 42; }
enum Foo { BAZ = Foo["BAR"] }
🙁 Actual behavior
tsc panics with:
panic: Unhandled case in Node.MemberList: KindVariableDeclarationList [recovered, repanicked]
The compiler crashes instead of emitting a type error or handling gracefully.
🙂 Expected behavior
tsc should emit a type error (e.g. TS2304 or similar) or
handle the merged namespace/enum case gracefully without crashing.
TypeScript 5.x handles this without panicking.
Additional information about the issue
This is a variant of #64668 (KindModuleBlock panic) but triggered
by export const instead of export class in the namespace.
The fix PR #64746 targets KindModuleBlock it likely does not
cover KindVariableDeclarationList.
Tested on:
- TypeScript 7.0.2 → panics (KindVariableDeclarationList)
- TypeScript 5.8.3 → throws JS TypeError (no panic, no crash)
- 主要語言
- Go
- 星號
- 112k
- 分支
- 15.4k
- 平均合併
- 2 天 21 小時
- 30 天內合併 PR
- 126
環境準備
在瀏覽器裡用你自己的 GitHub 帳號啟動這個專案的開發容器。
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
microsoft/TypeScript 的其他 Issue
-
Won't Fix
難度 2/5 1-3 小時 新手友好度 62/100
microsoft/TypeScript#65107 · 1 則留言 ·
維護者通常 1 天內回覆
-
Native API: formatDiagnosticsWithColorAndContext drops related information without a file location可能已有人在做 @timurzvural 今天認領。 未關閉
難度 2/5 1-3 小時 新手友好度 75/100
microsoft/TypeScript#65087 ·
維護者通常 1 天內回覆
-
TS7 LSP: documentHighlight returns nothing when the file path contains '@'可能重新可做 關聯的 PR 已關閉且未合併。 未關閉Bug
難度 2/5 1-3 小時 新手友好度 78/100
microsoft/TypeScript#64758 ·
維護者通常 1 天內回覆
-
Language server (tsc --lsp) exits with code 1 after `shutdown` and `exit`可能已有人在做 @rajnish-verma-22172 於 13 天前認領。 未關閉Bug
難度 2/5 1-3 小時 新手友好度 76/100
microsoft/TypeScript#64742 · 1 則留言 ·
維護者通常 1 天內回覆
-
Class names `eval` and `arguments` are not reported as invalid strict mode bindings可能已有人在做 @dmety 於 26 天前認領。 未關閉Bug
難度 2/5 1-3 小時 新手友好度 68/100
microsoft/TypeScript#64661 ·
維護者通常 1 天內回覆
查看 microsoft/TypeScript 的全部 Issue
相似的 Issue
-
難度 2/5 1-3 小時 新手友好度 75/100
維護者通常 1 天內回覆
-
cmd/ebitenmobile: multi-language bindings run the complete generator twice可能已有人在做 @kumagi 今天認領。 未關閉os:macos performance
難度 2/5 1-3 小時 新手友好度 82/100
hajimehoshi/ebiten#4011 · 1 則留言 ·
維護者通常 1 天內回覆
-
agent-butler-finding chore
難度 1/5 1 小時以內 新手友好度 78/100
jordansmall/spindrift#6318 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 72/100
Eyevinn/moqlivemock#166 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 72/100
JakeChampion/lang#14091 ·
維護者通常 1 天內回覆