Skip to content

Commit e88f632

Browse files
committed
Accept new baselines
1 parent 55180f7 commit e88f632

8 files changed

+210
-0
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
tests/cases/conformance/types/rest/genericRestArity.ts(7,1): error TS2554: Expected 3 arguments, but got 1.
2+
tests/cases/conformance/types/rest/genericRestArity.ts(8,1): error TS2554: Expected 3 arguments, but got 8.
3+
4+
5+
==== tests/cases/conformance/types/rest/genericRestArity.ts (2 errors) ====
6+
// Repro from #25559
7+
8+
declare function call<TS extends unknown[]>(
9+
handler: (...args: TS) => void,
10+
...args: TS): void;
11+
12+
call((x: number, y: number) => x + y);
13+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14+
!!! error TS2554: Expected 3 arguments, but got 1.
15+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
16+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17+
!!! error TS2554: Expected 3 arguments, but got 8.
18+
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
//// [genericRestArity.ts]
2+
// Repro from #25559
3+
4+
declare function call<TS extends unknown[]>(
5+
handler: (...args: TS) => void,
6+
...args: TS): void;
7+
8+
call((x: number, y: number) => x + y);
9+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
10+
11+
12+
//// [genericRestArity.js]
13+
// Repro from #25559
14+
call(function (x, y) { return x + y; });
15+
call(function (x, y) { return x + y; }, 1, 2, 3, 4, 5, 6, 7);
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
=== tests/cases/conformance/types/rest/genericRestArity.ts ===
2+
// Repro from #25559
3+
4+
declare function call<TS extends unknown[]>(
5+
>call : Symbol(call, Decl(genericRestArity.ts, 0, 0))
6+
>TS : Symbol(TS, Decl(genericRestArity.ts, 2, 22))
7+
8+
handler: (...args: TS) => void,
9+
>handler : Symbol(handler, Decl(genericRestArity.ts, 2, 44))
10+
>args : Symbol(args, Decl(genericRestArity.ts, 3, 14))
11+
>TS : Symbol(TS, Decl(genericRestArity.ts, 2, 22))
12+
13+
...args: TS): void;
14+
>args : Symbol(args, Decl(genericRestArity.ts, 3, 35))
15+
>TS : Symbol(TS, Decl(genericRestArity.ts, 2, 22))
16+
17+
call((x: number, y: number) => x + y);
18+
>call : Symbol(call, Decl(genericRestArity.ts, 0, 0))
19+
>x : Symbol(x, Decl(genericRestArity.ts, 6, 6))
20+
>y : Symbol(y, Decl(genericRestArity.ts, 6, 16))
21+
>x : Symbol(x, Decl(genericRestArity.ts, 6, 6))
22+
>y : Symbol(y, Decl(genericRestArity.ts, 6, 16))
23+
24+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
25+
>call : Symbol(call, Decl(genericRestArity.ts, 0, 0))
26+
>x : Symbol(x, Decl(genericRestArity.ts, 7, 6))
27+
>y : Symbol(y, Decl(genericRestArity.ts, 7, 16))
28+
>x : Symbol(x, Decl(genericRestArity.ts, 7, 6))
29+
>y : Symbol(y, Decl(genericRestArity.ts, 7, 16))
30+
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
=== tests/cases/conformance/types/rest/genericRestArity.ts ===
2+
// Repro from #25559
3+
4+
declare function call<TS extends unknown[]>(
5+
>call : <TS extends unknown[]>(handler: (...args: TS) => void, ...args: TS) => void
6+
>TS : TS
7+
8+
handler: (...args: TS) => void,
9+
>handler : (...args: TS) => void
10+
>args : TS
11+
>TS : TS
12+
13+
...args: TS): void;
14+
>args : TS
15+
>TS : TS
16+
17+
call((x: number, y: number) => x + y);
18+
>call((x: number, y: number) => x + y) : any
19+
>call : <TS extends unknown[]>(handler: (...args: TS) => void, ...args: TS) => void
20+
>(x: number, y: number) => x + y : (x: number, y: number) => number
21+
>x : number
22+
>y : number
23+
>x + y : number
24+
>x : number
25+
>y : number
26+
27+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
28+
>call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7) : any
29+
>call : <TS extends unknown[]>(handler: (...args: TS) => void, ...args: TS) => void
30+
>(x: number, y: number) => x + y : (x: number, y: number) => number
31+
>x : number
32+
>y : number
33+
>x + y : number
34+
>x : number
35+
>y : number
36+
>1 : 1
37+
>2 : 2
38+
>3 : 3
39+
>4 : 4
40+
>5 : 5
41+
>6 : 6
42+
>7 : 7
43+
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
tests/cases/conformance/types/rest/genericRestArityStrict.ts(7,6): error TS2345: Argument of type '(x: number, y: number) => number' is not assignable to parameter of type '() => void'.
2+
3+
4+
==== tests/cases/conformance/types/rest/genericRestArityStrict.ts (1 errors) ====
5+
// Repro from #25559
6+
7+
declare function call<TS extends unknown[]>(
8+
handler: (...args: TS) => void,
9+
...args: TS): void;
10+
11+
call((x: number, y: number) => x + y);
12+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13+
!!! error TS2345: Argument of type '(x: number, y: number) => number' is not assignable to parameter of type '() => void'.
14+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
15+
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
//// [genericRestArityStrict.ts]
2+
// Repro from #25559
3+
4+
declare function call<TS extends unknown[]>(
5+
handler: (...args: TS) => void,
6+
...args: TS): void;
7+
8+
call((x: number, y: number) => x + y);
9+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
10+
11+
12+
//// [genericRestArityStrict.js]
13+
"use strict";
14+
// Repro from #25559
15+
call(function (x, y) { return x + y; });
16+
call(function (x, y) { return x + y; }, 1, 2, 3, 4, 5, 6, 7);
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
=== tests/cases/conformance/types/rest/genericRestArityStrict.ts ===
2+
// Repro from #25559
3+
4+
declare function call<TS extends unknown[]>(
5+
>call : Symbol(call, Decl(genericRestArityStrict.ts, 0, 0))
6+
>TS : Symbol(TS, Decl(genericRestArityStrict.ts, 2, 22))
7+
8+
handler: (...args: TS) => void,
9+
>handler : Symbol(handler, Decl(genericRestArityStrict.ts, 2, 44))
10+
>args : Symbol(args, Decl(genericRestArityStrict.ts, 3, 14))
11+
>TS : Symbol(TS, Decl(genericRestArityStrict.ts, 2, 22))
12+
13+
...args: TS): void;
14+
>args : Symbol(args, Decl(genericRestArityStrict.ts, 3, 35))
15+
>TS : Symbol(TS, Decl(genericRestArityStrict.ts, 2, 22))
16+
17+
call((x: number, y: number) => x + y);
18+
>call : Symbol(call, Decl(genericRestArityStrict.ts, 0, 0))
19+
>x : Symbol(x, Decl(genericRestArityStrict.ts, 6, 6))
20+
>y : Symbol(y, Decl(genericRestArityStrict.ts, 6, 16))
21+
>x : Symbol(x, Decl(genericRestArityStrict.ts, 6, 6))
22+
>y : Symbol(y, Decl(genericRestArityStrict.ts, 6, 16))
23+
24+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
25+
>call : Symbol(call, Decl(genericRestArityStrict.ts, 0, 0))
26+
>x : Symbol(x, Decl(genericRestArityStrict.ts, 7, 6))
27+
>y : Symbol(y, Decl(genericRestArityStrict.ts, 7, 16))
28+
>x : Symbol(x, Decl(genericRestArityStrict.ts, 7, 6))
29+
>y : Symbol(y, Decl(genericRestArityStrict.ts, 7, 16))
30+
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
=== tests/cases/conformance/types/rest/genericRestArityStrict.ts ===
2+
// Repro from #25559
3+
4+
declare function call<TS extends unknown[]>(
5+
>call : <TS extends unknown[]>(handler: (...args: TS) => void, ...args: TS) => void
6+
>TS : TS
7+
8+
handler: (...args: TS) => void,
9+
>handler : (...args: TS) => void
10+
>args : TS
11+
>TS : TS
12+
13+
...args: TS): void;
14+
>args : TS
15+
>TS : TS
16+
17+
call((x: number, y: number) => x + y);
18+
>call((x: number, y: number) => x + y) : any
19+
>call : <TS extends unknown[]>(handler: (...args: TS) => void, ...args: TS) => void
20+
>(x: number, y: number) => x + y : (x: number, y: number) => number
21+
>x : number
22+
>y : number
23+
>x + y : number
24+
>x : number
25+
>y : number
26+
27+
call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7);
28+
>call((x: number, y: number) => x + y, 1, 2, 3, 4, 5, 6, 7) : void
29+
>call : <TS extends unknown[]>(handler: (...args: TS) => void, ...args: TS) => void
30+
>(x: number, y: number) => x + y : (x: number, y: number) => number
31+
>x : number
32+
>y : number
33+
>x + y : number
34+
>x : number
35+
>y : number
36+
>1 : 1
37+
>2 : 2
38+
>3 : 3
39+
>4 : 4
40+
>5 : 5
41+
>6 : 6
42+
>7 : 7
43+

0 commit comments

Comments
 (0)