* Eliminate well-known symbols in the checker: 2021 edition * Actually update the lib text to say unique symbol, too (this is unneeded with compat code in place, but this makes goto-def make more sense) * Add test showing mismatched symbol constructor type interop * Add more test cases for some other related issues this fixes * Revert computed name change * Style comments
28 lines
562 B
Plaintext
28 lines
562 B
Plaintext
=== tests/cases/conformance/Symbols/ES5SymbolProperty1.ts ===
|
|
interface SymbolConstructor {
|
|
foo: string;
|
|
>foo : string
|
|
}
|
|
var Symbol: SymbolConstructor;
|
|
>Symbol : SymbolConstructor
|
|
|
|
var obj = {
|
|
>obj : { [x: string]: number; }
|
|
>{ [Symbol.foo]: 0} : { [x: string]: number; }
|
|
|
|
[Symbol.foo]: 0
|
|
>[Symbol.foo] : number
|
|
>Symbol.foo : string
|
|
>Symbol : SymbolConstructor
|
|
>foo : string
|
|
>0 : 0
|
|
}
|
|
|
|
obj[Symbol.foo];
|
|
>obj[Symbol.foo] : number
|
|
>obj : { [x: string]: number; }
|
|
>Symbol.foo : string
|
|
>Symbol : SymbolConstructor
|
|
>foo : string
|
|
|