| 12
 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
 
 | === tests/cases/compiler/propertyAssignment.ts ===
var foo1: { new ():any; }   
>foo1 : Symbol(foo1, Decl(propertyAssignment.ts, 0, 3))
var bar1: { x : number; }
>bar1 : Symbol(bar1, Decl(propertyAssignment.ts, 1, 3))
>x : Symbol(x, Decl(propertyAssignment.ts, 1, 11))
var foo2: { [index]; } // should be an error, used to be indexer, now it is a computed property
>foo2 : Symbol(foo2, Decl(propertyAssignment.ts, 3, 3))
>[index] : Symbol([index], Decl(propertyAssignment.ts, 3, 11))
var bar2: { x : number; }
>bar2 : Symbol(bar2, Decl(propertyAssignment.ts, 4, 3))
>x : Symbol(x, Decl(propertyAssignment.ts, 4, 11))
var foo3: { ():void; }
>foo3 : Symbol(foo3, Decl(propertyAssignment.ts, 6, 3))
var bar3: { x : number; }
>bar3 : Symbol(bar3, Decl(propertyAssignment.ts, 7, 3))
>x : Symbol(x, Decl(propertyAssignment.ts, 7, 11))
foo1 = bar1; // should be an error
>foo1 : Symbol(foo1, Decl(propertyAssignment.ts, 0, 3))
>bar1 : Symbol(bar1, Decl(propertyAssignment.ts, 1, 3))
foo2 = bar2; 
>foo2 : Symbol(foo2, Decl(propertyAssignment.ts, 3, 3))
>bar2 : Symbol(bar2, Decl(propertyAssignment.ts, 4, 3))
foo3 = bar3; // should be an error
>foo3 : Symbol(foo3, Decl(propertyAssignment.ts, 6, 3))
>bar3 : Symbol(bar3, Decl(propertyAssignment.ts, 7, 3))
 |