1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
=== tests/cases/conformance/es6/destructuring/destructuringAssignabilityCheck.ts ===
const [] = {}; // should be error
>{} : {}
const {} = undefined; // error correctly
>undefined : undefined
(([]) => 0)({}); // should be error
>(([]) => 0)({}) : number
>(([]) => 0) : ([]: {}) => number
>([]) => 0 : ([]: {}) => number
>0 : 0
>{} : {}
(({}) => 0)(undefined); // should be error
>(({}) => 0)(undefined) : number
>(({}) => 0) : ({}: undefined) => number
>({}) => 0 : ({}: undefined) => number
>0 : 0
>undefined : undefined
function foo({}: undefined) {
>foo : ({}: undefined) => number
return 0
>0 : 0
}
function bar([]: {}) {
>bar : ([]: {}) => number
return 0
>0 : 0
}
const { }: undefined = 1
>1 : 1
const []: {} = {}
>{} : {}
|