Skip to content

[Bug]tsc does not finish #26314

Description

@kgtkr

TypeScript Version: 3.0.1/3.1.0-dev.20180808

Search Terms:

Code

typeHead<T>=Textends[infer P, ...any[]] ? P : never;typeTail<Lextendsany[]>=((...x: L)=>void)extends((h: any, ...rest: infer T)=>void) ? T : nevertypeLast<Textendsany[]>={0: never,1: Head<T>,2: Last<Tail<T>>,}[Textends[] ? 0 : Textends[any] ? 1 : 2];typeReverse<Lextendsany[],Xextendsany[]=[]>={1: X,0: Reverse<Tail<L>,Cons<Head<L>,X>>}[Lextends[] ? 1 : 0]typeFn<Rextendsany[]>=(...args: R)=>voidtypeFn1<H,Textendsany[]>=(h: H, ...args: T)=>voidtypeCons<H,Textendsany[]>=Fn1<H,T>extendsFn<infer R> ? R : []typeZip<Aextendsany[],Bextendsany[],Rextendsany[]=[]>={0: Reverse<R>,1: Zip<Tail<A>,Tail<B>,Cons<[Head<A>,Head<B>],R>>}[Aextends[] ? 0 : Bextends[] ? 0 : 1];typeShiftZip<Textendsany[]>=Zip<T,Tail<T>>;typeTuple2Fn<T>=Textends[infer A, infer B] ? (x: A)=>B : never;type_Pipe<Textendsany[],Rextendsany[]=[]>={0: Reverse<R>,1: _Pipe<Tail<T>,Cons<Tuple2Fn<Head<T>>,R>>}[Textends[] ? 0 : 1];typePipe<Textendsany[]>=_Pipe<ShiftZip<T>>;declarefunctionpipe<Textendsany[]>(...f: Pipe<T>): (x: Head<T>)=>Last<T>;

Expected behavior:
tsc finish

Actual behavior:
tsc does not finish

Playground Link:

Related Issues:
#24897

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugA bug in TypeScript

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions