Microsoft/TypeScript

Crash `Unhandled type Any` on ESM-mode namespace import of `module.exports = null`

Open

#54,352 创建于 2023年5月22日

在 GitHub 查看
 (0 评论) (0 反应) (0 负责人)TypeScript (6,726 fork)batch import
BugCrashDomain: Node ESMHelp Wanted

仓库指标

Star
 (48,455 star)
PR 合并指标
 (平均合并 6天 17小时) (30 天内合并 9 个 PR)

描述

Bug Report

🔎 Search Terms

unhandled type any

💻 Code

// @module: nodenext
// @allowJs: true
// @noEmit: true

// @Filename: single-null-export.js
module.exports = null;

// @Filename: index.mts
import * as x from "./single-null-export.js";

🙁 Actual behavior

Error: Debug Failure. Unhandled type Any
    at resolveStructuredTypeMembers (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:53313:15)
    at cloneTypeAsModuleType (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:45963:32)
    at resolveESModuleSymbol (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:45942:20)
    at getTargetOfNamespaceImport (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:44942:22)
    at getTargetOfAliasDeclaration (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:45249:16)
    at resolveAlias (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:45295:22)
    at checkAliasSymbol (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:78629:20)
    at checkImportBinding (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:78745:5)
    at checkImportDeclaration (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:78794:13)
    at checkSourceElementWorker (/Users/andrew/Developer/microsoft/eg/crash/node_modules/typescript/lib/tsc.js:79280:16)

🙂 Expected behavior

Compiles without error (and the type of x should be something like { default: null })

贡献者指南