Skip to content

Commit

Permalink
Add never case
Browse files Browse the repository at this point in the history
  • Loading branch information
jack-williams committed Oct 2, 2018
1 parent b66321a commit f3b6eea
Show file tree
Hide file tree
Showing 5 changed files with 128 additions and 96 deletions.
43 changes: 25 additions & 18 deletions tests/baselines/reference/callWithMissingVoid.errors.txt
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(16,1): error TS2554: Expected 1 arguments, but got 0.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(19,1): error TS2554: Expected 1 arguments, but got 0.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(32,31): error TS2554: Expected 1 arguments, but got 0.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(33,35): error TS2554: Expected 1 arguments, but got 0.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(44,1): error TS2554: Expected 3 arguments, but got 1.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(51,1): error TS2554: Expected 4 arguments, but got 2.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(52,1): error TS2554: Expected 4 arguments, but got 3.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(53,1): error TS2554: Expected 4 arguments, but got 1.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(71,6): error TS2345: Argument of type '(x: number, y: number) => number' is not assignable to parameter of type '() => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(75,6): error TS2345: Argument of type '(x: number, y: void) => number' is not assignable to parameter of type '(args_0: number) => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(76,6): error TS2345: Argument of type '(x: void, y: void) => number' is not assignable to parameter of type '() => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(77,6): error TS2345: Argument of type '(x: number | void, y: number | void) => number' is not assignable to parameter of type '() => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(78,6): error TS2345: Argument of type '(x: number | void, y: number | void) => number' is not assignable to parameter of type '(args_0: number) => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(22,1): error TS2554: Expected 1 arguments, but got 0.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(35,31): error TS2554: Expected 1 arguments, but got 0.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(36,35): error TS2554: Expected 1 arguments, but got 0.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(47,1): error TS2554: Expected 3 arguments, but got 1.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(54,1): error TS2554: Expected 4 arguments, but got 2.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(55,1): error TS2554: Expected 4 arguments, but got 3.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(56,1): error TS2554: Expected 4 arguments, but got 1.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(74,6): error TS2345: Argument of type '(x: number, y: number) => number' is not assignable to parameter of type '() => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(78,6): error TS2345: Argument of type '(x: number, y: void) => number' is not assignable to parameter of type '(args_0: number) => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(79,6): error TS2345: Argument of type '(x: void, y: void) => number' is not assignable to parameter of type '() => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(80,6): error TS2345: Argument of type '(x: number | void, y: number | void) => number' is not assignable to parameter of type '() => void'.
tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(81,6): error TS2345: Argument of type '(x: number | void, y: number | void) => number' is not assignable to parameter of type '(args_0: number) => void'.


==== tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts (13 errors) ====
==== tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts (14 errors) ====
// From #4260
class X<T> {
f(t: T) {
Expand All @@ -40,6 +41,12 @@ tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(78,6):
!!! error TS2554: Expected 1 arguments, but got 0.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:3:7: An argument for 't' was not provided.

declare const xNever: X<never>;
xNever.f() // error, never still expects an argument
~~~~~~~~~~
!!! error TS2554: Expected 1 arguments, but got 0.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:3:7: An argument for 't' was not provided.


// Promise has previously been updated to work without arguments, but to show this fixes the issue too.

Expand All @@ -54,11 +61,11 @@ tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(78,6):
new MyPromise<any>(resolve => resolve()); // error, `any` arguments cannot be omitted
~~~~~~~~~
!!! error TS2554: Expected 1 arguments, but got 0.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:25:38: An argument for 'value' was not provided.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:28:38: An argument for 'value' was not provided.
new MyPromise<unknown>(resolve => resolve()); // error, `unknown` arguments cannot be omitted
~~~~~~~~~
!!! error TS2554: Expected 1 arguments, but got 0.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:25:38: An argument for 'value' was not provided.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:28:38: An argument for 'value' was not provided.


// Multiple parameters
Expand All @@ -72,7 +79,7 @@ tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(78,6):
a(4); // not ok
~~~~
!!! error TS2554: Expected 3 arguments, but got 1.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:38:23: An argument for 'y' was not provided.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:41:23: An argument for 'y' was not provided.

function b(x: number, y: string, z: void, what: number): void {

Expand All @@ -82,15 +89,15 @@ tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts(78,6):
b(4, "hello"); // not ok
~~~~~~~~~~~~~
!!! error TS2554: Expected 4 arguments, but got 2.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:46:34: An argument for 'z' was not provided.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:49:34: An argument for 'z' was not provided.
b(4, "hello", void 0); // not ok
~~~~~~~~~~~~~~~~~~~~~
!!! error TS2554: Expected 4 arguments, but got 3.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:46:43: An argument for 'what' was not provided.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:49:43: An argument for 'what' was not provided.
b(4); // not ok
~~~~
!!! error TS2554: Expected 4 arguments, but got 1.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:46:23: An argument for 'y' was not provided.
!!! related TS6210 tests/cases/conformance/expressions/functionCalls/callWithMissingVoid.ts:49:23: An argument for 'y' was not provided.

function c(x: number | void, y: void, z: void | string | number): void {

Expand Down
4 changes: 4 additions & 0 deletions tests/baselines/reference/callWithMissingVoid.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ xAny.f() // error, any still expects an argument
declare const xUnknown: X<unknown>;
xUnknown.f() // error, unknown still expects an argument

declare const xNever: X<never>;
xNever.f() // error, never still expects an argument


// Promise has previously been updated to work without arguments, but to show this fixes the issue too.

Expand Down Expand Up @@ -97,6 +100,7 @@ xUnion.f(42); // no error because f accepts number
xUnion.f(); // no error because f accepts void
xAny.f(); // error, any still expects an argument
xUnknown.f(); // error, unknown still expects an argument
xNever.f(); // error, never still expects an argument
// Promise has previously been updated to work without arguments, but to show this fixes the issue too.
var MyPromise = /** @class */ (function () {
function MyPromise(executor) {
Expand Down
165 changes: 87 additions & 78 deletions tests/baselines/reference/callWithMissingVoid.symbols
Original file line number Diff line number Diff line change
Expand Up @@ -56,163 +56,172 @@ xUnknown.f() // error, unknown still expects an argument
>xUnknown : Symbol(xUnknown, Decl(callWithMissingVoid.ts, 17, 13))
>f : Symbol(X.f, Decl(callWithMissingVoid.ts, 1, 12))

declare const xNever: X<never>;
>xNever : Symbol(xNever, Decl(callWithMissingVoid.ts, 20, 13))
>X : Symbol(X, Decl(callWithMissingVoid.ts, 0, 0))

xNever.f() // error, never still expects an argument
>xNever.f : Symbol(X.f, Decl(callWithMissingVoid.ts, 1, 12))
>xNever : Symbol(xNever, Decl(callWithMissingVoid.ts, 20, 13))
>f : Symbol(X.f, Decl(callWithMissingVoid.ts, 1, 12))


// Promise has previously been updated to work without arguments, but to show this fixes the issue too.

class MyPromise<X> {
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 18, 12))
>X : Symbol(X, Decl(callWithMissingVoid.ts, 23, 16))
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 21, 10))
>X : Symbol(X, Decl(callWithMissingVoid.ts, 26, 16))

constructor(executor: (resolve: (value: X) => void) => void) {
>executor : Symbol(executor, Decl(callWithMissingVoid.ts, 24, 16))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 24, 27))
>value : Symbol(value, Decl(callWithMissingVoid.ts, 24, 37))
>X : Symbol(X, Decl(callWithMissingVoid.ts, 23, 16))
>executor : Symbol(executor, Decl(callWithMissingVoid.ts, 27, 16))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 27, 27))
>value : Symbol(value, Decl(callWithMissingVoid.ts, 27, 37))
>X : Symbol(X, Decl(callWithMissingVoid.ts, 26, 16))

}
}

new MyPromise<void>(resolve => resolve()); // no error
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 18, 12))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 29, 20))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 29, 20))
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 21, 10))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 32, 20))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 32, 20))

new MyPromise<void | number>(resolve => resolve()); // no error
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 18, 12))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 30, 29))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 30, 29))
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 21, 10))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 33, 29))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 33, 29))

new MyPromise<any>(resolve => resolve()); // error, `any` arguments cannot be omitted
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 18, 12))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 31, 19))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 31, 19))
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 21, 10))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 34, 19))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 34, 19))

new MyPromise<unknown>(resolve => resolve()); // error, `unknown` arguments cannot be omitted
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 18, 12))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 32, 23))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 32, 23))
>MyPromise : Symbol(MyPromise, Decl(callWithMissingVoid.ts, 21, 10))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 35, 23))
>resolve : Symbol(resolve, Decl(callWithMissingVoid.ts, 35, 23))


// Multiple parameters

function a(x: number, y: string, z: void): void {
>a : Symbol(a, Decl(callWithMissingVoid.ts, 32, 45))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 37, 11))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 37, 21))
>z : Symbol(z, Decl(callWithMissingVoid.ts, 37, 32))
>a : Symbol(a, Decl(callWithMissingVoid.ts, 35, 45))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 40, 11))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 40, 21))
>z : Symbol(z, Decl(callWithMissingVoid.ts, 40, 32))

}

a(4, "hello"); // ok
>a : Symbol(a, Decl(callWithMissingVoid.ts, 32, 45))
>a : Symbol(a, Decl(callWithMissingVoid.ts, 35, 45))

a(4, "hello", void 0); // ok
>a : Symbol(a, Decl(callWithMissingVoid.ts, 32, 45))
>a : Symbol(a, Decl(callWithMissingVoid.ts, 35, 45))

a(4); // not ok
>a : Symbol(a, Decl(callWithMissingVoid.ts, 32, 45))
>a : Symbol(a, Decl(callWithMissingVoid.ts, 35, 45))

function b(x: number, y: string, z: void, what: number): void {
>b : Symbol(b, Decl(callWithMissingVoid.ts, 43, 5))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 45, 11))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 45, 21))
>z : Symbol(z, Decl(callWithMissingVoid.ts, 45, 32))
>what : Symbol(what, Decl(callWithMissingVoid.ts, 45, 41))
>b : Symbol(b, Decl(callWithMissingVoid.ts, 46, 5))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 48, 11))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 48, 21))
>z : Symbol(z, Decl(callWithMissingVoid.ts, 48, 32))
>what : Symbol(what, Decl(callWithMissingVoid.ts, 48, 41))

}

b(4, "hello", void 0, 2); // ok
>b : Symbol(b, Decl(callWithMissingVoid.ts, 43, 5))
>b : Symbol(b, Decl(callWithMissingVoid.ts, 46, 5))

b(4, "hello"); // not ok
>b : Symbol(b, Decl(callWithMissingVoid.ts, 43, 5))
>b : Symbol(b, Decl(callWithMissingVoid.ts, 46, 5))

b(4, "hello", void 0); // not ok
>b : Symbol(b, Decl(callWithMissingVoid.ts, 43, 5))
>b : Symbol(b, Decl(callWithMissingVoid.ts, 46, 5))

b(4); // not ok
>b : Symbol(b, Decl(callWithMissingVoid.ts, 43, 5))
>b : Symbol(b, Decl(callWithMissingVoid.ts, 46, 5))

function c(x: number | void, y: void, z: void | string | number): void {
>c : Symbol(c, Decl(callWithMissingVoid.ts, 52, 5))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 54, 11))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 54, 28))
>z : Symbol(z, Decl(callWithMissingVoid.ts, 54, 37))
>c : Symbol(c, Decl(callWithMissingVoid.ts, 55, 5))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 57, 11))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 57, 28))
>z : Symbol(z, Decl(callWithMissingVoid.ts, 57, 37))

}

c(3, void 0, void 0); // ok
>c : Symbol(c, Decl(callWithMissingVoid.ts, 52, 5))
>c : Symbol(c, Decl(callWithMissingVoid.ts, 55, 5))

c(3, void 0); // ok
>c : Symbol(c, Decl(callWithMissingVoid.ts, 52, 5))
>c : Symbol(c, Decl(callWithMissingVoid.ts, 55, 5))

c(3); // ok
>c : Symbol(c, Decl(callWithMissingVoid.ts, 52, 5))
>c : Symbol(c, Decl(callWithMissingVoid.ts, 55, 5))

c(); // ok
>c : Symbol(c, Decl(callWithMissingVoid.ts, 52, 5))
>c : Symbol(c, Decl(callWithMissingVoid.ts, 55, 5))


// Spread Parameters

declare function call<TS extends unknown[]>(
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>TS : Symbol(TS, Decl(callWithMissingVoid.ts, 66, 22))
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>TS : Symbol(TS, Decl(callWithMissingVoid.ts, 69, 22))

handler: (...args: TS) => void,
>handler : Symbol(handler, Decl(callWithMissingVoid.ts, 66, 44))
>args : Symbol(args, Decl(callWithMissingVoid.ts, 67, 14))
>TS : Symbol(TS, Decl(callWithMissingVoid.ts, 66, 22))
>handler : Symbol(handler, Decl(callWithMissingVoid.ts, 69, 44))
>args : Symbol(args, Decl(callWithMissingVoid.ts, 70, 14))
>TS : Symbol(TS, Decl(callWithMissingVoid.ts, 69, 22))

...args: TS): void;
>args : Symbol(args, Decl(callWithMissingVoid.ts, 67, 35))
>TS : Symbol(TS, Decl(callWithMissingVoid.ts, 66, 22))
>args : Symbol(args, Decl(callWithMissingVoid.ts, 70, 35))
>TS : Symbol(TS, Decl(callWithMissingVoid.ts, 69, 22))

call((x: number, y: number) => x + y) // error
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 70, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 70, 16))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 70, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 70, 16))

call((x: number, y: number) => x + y, 4, 2) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 71, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 71, 16))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 71, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 71, 16))

call((x: number, y: void) => x, 4, void 0) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 73, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 73, 16))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 73, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 73, 16))

call((x: number, y: void) => x, 4) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
call((x: number, y: number) => x + y, 4, 2) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 74, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 74, 16))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 74, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 74, 16))

call((x: number, y: void) => x, 4, void 0) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 76, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 76, 16))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 76, 6))

call((x: number, y: void) => x, 4) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 77, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 77, 16))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 77, 6))

call((x: void, y: void) => 42) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 75, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 75, 14))
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 78, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 78, 14))

call((x: number | void, y: number | void) => 42) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 76, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 76, 23))
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 79, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 79, 23))

call((x: number | void, y: number | void) => 42, 4) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 77, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 77, 23))
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 80, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 80, 23))

call((x: number | void, y: number | void) => 42, 4, 2) // ok
>call : Symbol(call, Decl(callWithMissingVoid.ts, 61, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 78, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 78, 23))
>call : Symbol(call, Decl(callWithMissingVoid.ts, 64, 4))
>x : Symbol(x, Decl(callWithMissingVoid.ts, 81, 6))
>y : Symbol(y, Decl(callWithMissingVoid.ts, 81, 23))


Loading

0 comments on commit f3b6eea

Please sign in to comment.