Test:contextual typing of arguments obj in JS files

This commit is contained in:
Nathan Shively-Sanders 2017-09-11 11:17:14 -07:00
parent 2fdb5b8659
commit 4e04a740f8
3 changed files with 43 additions and 0 deletions

View file

@ -0,0 +1,14 @@
=== tests/cases/compiler/foo.js ===
// Repro for #16585
const x = {
>x : Symbol(x, Decl(foo.js, 1, 5))
bar() {
>bar : Symbol(bar, Decl(foo.js, 1, 11))
setTimeout(function() { arguments }, 0);
>setTimeout : Symbol(setTimeout, Decl(lib.dom.d.ts, --, --), Decl(lib.dom.d.ts, --, --))
>arguments : Symbol(arguments)
}
}

View file

@ -0,0 +1,18 @@
=== tests/cases/compiler/foo.js ===
// Repro for #16585
const x = {
>x : { [x: string]: any; bar(): void; }
>{ bar() { setTimeout(function() { arguments }, 0); }} : { [x: string]: any; bar(): void; }
bar() {
>bar : () => void
setTimeout(function() { arguments }, 0);
>setTimeout(function() { arguments }, 0) : number
>setTimeout : { (handler: (...args: any[]) => void, timeout: number): number; (handler: any, timeout?: any, ...args: any[]): number; }
>function() { arguments } : (...args: any[]) => void
>arguments : IArguments
>0 : 0
}
}

View file

@ -0,0 +1,11 @@
// @noEmit: true
// @allowJs: true
// @checkJs: true
// @lib: es2017, dom
// @Filename: foo.js
// Repro for #16585
const x = {
bar() {
setTimeout(function() { arguments }, 0);
}
}