🔎 Search Terms
RangeError: Maximum call stack size exceeded
isDeprecatedSymbol
getTypeOfInitializer
checkIdentifierCalculateNodeCheckFlags
strict mode crash
🕗 Version & Regression Information
Versions: Reproducible in 5.7.3, 5.8.3, 5.9.3, and Nightly.
Conditions: Only crashes when --strict
⏯ Playground Link
https://www.typescriptlang.org/zh/play/?target=7&ts=6.0.0-dev.20260124#code/GYVwdgxgLglg9mABMAFASgFAdJWDkoDawMATgM5QA0i4AJgKYlgN0C6A-AFyIoQIkA5lwCGYAJ5pEAXgB8iMeMQzaYRs1aI0PRQG8AvkA
💻 Code
function f()
function f([first, undefined]?: (config:any) => any = undefined ): any{}
🙁 Actual behavior
PS D:\do\typeFuzz> .\ts-versions\nightly\node_modules\.bin\tsc.cmd --strict .\mutated\callbackCrossModule_enriched_deep_mutated_batch6.ts
D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:123181
throw e;
^
RangeError: Maximum call stack size exceeded
at getCombinedNodeFlagsCached (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:90369:38)
at isDeprecatedDeclaration (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:47545:15)
at every (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:83:12)
at isDeprecatedSymbol (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:47542:124)
at checkIdentifierCalculateNodeCheckFlags (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:71936:9)
at checkIdentifier (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:71975:5)
at checkExpressionWorker (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:80857:16)
at checkExpression (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:80800:32)
at getTypeOfExpression (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:80741:18)
at getTypeOfInitializer (D:\do\typeFuzz\ts-versions\nightly\node_modules\typescript\lib\_tsc.js:69732:34)
Node.js v22.19.0
🙂 Expected behavior
The compiler should report a syntax error and not crash.
Additional information about the issue
No response
🔎 Search Terms
RangeError: Maximum call stack size exceeded
isDeprecatedSymbol
getTypeOfInitializer
checkIdentifierCalculateNodeCheckFlags
strict mode crash
🕗 Version & Regression Information
Versions: Reproducible in 5.7.3, 5.8.3, 5.9.3, and Nightly.
Conditions: Only crashes when --strict
⏯ Playground Link
https://www.typescriptlang.org/zh/play/?target=7&ts=6.0.0-dev.20260124#code/GYVwdgxgLglg9mABMAFASgFAdJWDkoDawMATgM5QA0i4AJgKYlgN0C6A-AFyIoQIkA5lwCGYAJ5pEAXgB8iMeMQzaYRs1aI0PRQG8AvkA
💻 Code
🙁 Actual behavior
🙂 Expected behavior
The compiler should report a syntax error and not crash.
Additional information about the issue
No response