Closed
Description
Simply importing the type definitions of ImmutableJS is enough to crash the compiler with an out of memory exception.
TypeScript Version: 2.4.1
index.ts
import 'immutable';
package.json
{
"private": true,
"name": "scratch",
"version": "0.0.1",
"dependencies": {
"immutable": "4.0.0-rc.2"
},
"devDependencies": {
"typescript": "^2.4.1"
},
"scripts": {
"build": "tsc"
}
}
tsconfig.json
{
"compilerOptions": {
"declaration": true,
"noImplicitAny": true,
"noEmitOnError": true,
"noUnusedLocals": true,
"module": "commonjs",
"moduleResolution": "node",
"target": "ES5",
"lib": ["ES5"],
"types": []
}
}
Expected behavior:
npm run build
should execute cleanly.
Actual behavior:
Out of memory error:
E:\Development\sccolbert\scratch>npm run build
> scratch@0.0.1 build E:\Development\sccolbert\scratch
> tsc
<--- Last few GCs --->
24342 ms: Mark-sweep 1373.9 (1434.6) -> 1373.9 (1434.6) MB, 1130.9 / 0.0 ms [allocation failure] [GC in old space requested].
25469 ms: Mark-sweep 1373.9 (1434.6) -> 1373.7 (1434.6) MB, 1126.1 / 0.0 ms [allocation failure] [GC in old space requested].
26600 ms: Mark-sweep 1373.7 (1434.6) -> 1374.9 (1418.6) MB, 1131.4 / 0.0 ms [last resort gc].
27744 ms: Mark-sweep 1374.9 (1418.6) -> 1376.0 (1418.6) MB, 1143.2 / 0.0 ms [last resort gc].
<--- JS stacktrace --->
==== JS stack trace =========================================
Security context: 00000294DA0CFB61 <JS Object>
1: getTypeOfSymbol [E:\Development\sccolbert\scratch\node_modules\typescript\lib\tsc.js:~25490] [pc=000003AB5C58E243] (this=000000CA3E8662F9 <JS Global Object>,symbol=000001704DD798E1 <a Symbol with map 0000003478D59B29>)
2: forEachMatchingParameterType [E:\Development\sccolbert\scratch\node_modules\typescript\lib\tsc.js:~30013] [pc=000003AB5C4F801C] (this=000000CA3E8662F9 <JS Global ...
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory