11longObjectInstantiationChain1.ts(57,4): error TS2339: Property 'p51' does not exist on type 'merge<{ p1: number; }, { p2: number; }>'.
22longObjectInstantiationChain1.ts(62,4): error TS2339: Property 'p4' does not exist on type 'merge<merge<{ p1: number; }, { p2: number; }>, { p3: number; }>'.
3- longObjectInstantiationChain1.ts(64,1): error TS2589: Type instantiation is excessively deep and possibly infinite.
4- longObjectInstantiationChain1.ts(65,1): error TS2589: Type instantiation is excessively deep and possibly infinite.
5- longObjectInstantiationChain1.ts(68,1): error TS2589: Type instantiation is excessively deep and possibly infinite.
63longObjectInstantiationChain1.ts(70,5): error TS2339: Property 'p38' does not exist on type 'merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<{ p1: number; }, { p2: number; }>, { p3: number; }>, { p4: number; }>, { p5: number; }>, { p6: number; }>, { p7: number; }>, { p8: number; }>, { p9: number; }>, { p10: number; }>, { p11: number; }>, { p12: number; }>, { p13: number; }>, { p14: number; }>, { p15: number; }>, { p16: number; }>, { p17: number; }>, { p18: number; }>, { p19: number; }>, { p20: number; }>, { p21: number; }>, { p22: number; }>, { p23: number; }>, { p24: number; }>, { p25: number; }>, { p26: number; }>, { p27: number; }>, { p28: number; }>, { p29: number; }>, { p30: number; }>, { p31: number; }>'.
74longObjectInstantiationChain1.ts(71,5): error TS2339: Property 'p51' does not exist on type 'merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<{ p1: number; }, { p2: number; }>, { p3: number; }>, { p4: number; }>, { p5: number; }>, { p6: number; }>, { p7: number; }>, { p8: number; }>, { p9: number; }>, { p10: number; }>, { p11: number; }>, { p12: number; }>, { p13: number; }>, { p14: number; }>, { p15: number; }>, { p16: number; }>, { p17: number; }>, { p18: number; }>, { p19: number; }>, { p20: number; }>, { p21: number; }>, { p22: number; }>, { p23: number; }>, { p24: number; }>, { p25: number; }>, { p26: number; }>, { p27: number; }>, { p28: number; }>, { p29: number; }>, { p30: number; }>, { p31: number; }>'.
8- longObjectInstantiationChain1.ts(73,1): error TS2589: Type instantiation is excessively deep and possibly infinite.
9- longObjectInstantiationChain1.ts(74,1): error TS2589: Type instantiation is excessively deep and possibly infinite.
10- longObjectInstantiationChain1.ts(75,1): error TS2589: Type instantiation is excessively deep and possibly infinite.
115
126
13- ==== longObjectInstantiationChain1.ts (10 errors) ====
7+ ==== longObjectInstantiationChain1.ts (4 errors) ====
148 export type merge<base, props> = Omit<base, keyof props & keyof base> & props;
159
1610 declare const merge: <l, r>(l: l, r: r) => merge<l, r>;
@@ -79,16 +73,10 @@ longObjectInstantiationChain1.ts(75,1): error TS2589: Type instantiation is exce
7973!!! error TS2339: Property 'p4' does not exist on type 'merge<merge<{ p1: number; }, { p2: number; }>, { p3: number; }>'.
8074
8175 o25.p1;
82- ~~~~~~
83- !!! error TS2589: Type instantiation is excessively deep and possibly infinite.
8476 o25.p10;
85- ~~~~~~~
86- !!! error TS2589: Type instantiation is excessively deep and possibly infinite.
8777 o25.p26;
8878
8979 o30.p1;
90- ~~~~~~
91- !!! error TS2589: Type instantiation is excessively deep and possibly infinite.
9280 o30.p31;
9381 o30.p38; // error
9482 ~~~
@@ -98,13 +86,7 @@ longObjectInstantiationChain1.ts(75,1): error TS2589: Type instantiation is exce
9886!!! error TS2339: Property 'p51' does not exist on type 'merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<merge<{ p1: number; }, { p2: number; }>, { p3: number; }>, { p4: number; }>, { p5: number; }>, { p6: number; }>, { p7: number; }>, { p8: number; }>, { p9: number; }>, { p10: number; }>, { p11: number; }>, { p12: number; }>, { p13: number; }>, { p14: number; }>, { p15: number; }>, { p16: number; }>, { p17: number; }>, { p18: number; }>, { p19: number; }>, { p20: number; }>, { p21: number; }>, { p22: number; }>, { p23: number; }>, { p24: number; }>, { p25: number; }>, { p26: number; }>, { p27: number; }>, { p28: number; }>, { p29: number; }>, { p30: number; }>, { p31: number; }>'.
9987
10088 o50.p1;
101- ~~~~~~
102- !!! error TS2589: Type instantiation is excessively deep and possibly infinite.
10389 o50.p31;
104- ~~~~~~~
105- !!! error TS2589: Type instantiation is excessively deep and possibly infinite.
10690 o50.p38;
107- ~~~~~~~
108- !!! error TS2589: Type instantiation is excessively deep and possibly infinite.
10991 o50.p51;
11092
0 commit comments