TypeScript/tests/baselines/reference/assignments.symbols

58 lines
1.4 KiB
Text
Raw Normal View History

=== tests/cases/conformance/expressions/valuesAndReferences/assignments.ts ===
// In this file:
// Assign to a module
// Assign to a class
// Assign to an enum
// Assign to a function
// Assign to a variable
// Assign to a parameter
// Assign to an interface
module M { }
>M : Symbol(M, Decl(assignments.ts, 0, 0))
M = null; // Error
class C { }
>C : Symbol(C, Decl(assignments.ts, 10, 9))
C = null; // Error
>C : Symbol(C, Decl(assignments.ts, 10, 9))
enum E { A }
>E : Symbol(E, Decl(assignments.ts, 13, 9))
>A : Symbol(E.A, Decl(assignments.ts, 15, 8))
E = null; // Error
>E : Symbol(E, Decl(assignments.ts, 13, 9))
E.A = null; // OK per spec, Error per implementation (509581)
>E.A : Symbol(E.A, Decl(assignments.ts, 15, 8))
>E : Symbol(E, Decl(assignments.ts, 13, 9))
>A : Symbol(E.A, Decl(assignments.ts, 15, 8))
function fn() { }
>fn : Symbol(fn, Decl(assignments.ts, 17, 11))
fn = null; // Should be error
>fn : Symbol(fn, Decl(assignments.ts, 17, 11))
var v;
>v : Symbol(v, Decl(assignments.ts, 22, 3))
v = null; // OK
>v : Symbol(v, Decl(assignments.ts, 22, 3))
function fn2(p) {
>fn2 : Symbol(fn2, Decl(assignments.ts, 23, 9))
>p : Symbol(p, Decl(assignments.ts, 25, 13))
p = null; // OK
>p : Symbol(p, Decl(assignments.ts, 25, 13))
}
interface I { }
>I : Symbol(I, Decl(assignments.ts, 27, 1))
I = null; // Error