tests/cases/compiler/thisBinding.ts(9,8): error TS2339: Property 'e' does not exist on type 'I'.
tests/cases/compiler/thisBinding.ts(13,4): error TS2684: The 'this' context of type '{ z: number; f: (x: I) => void; }' is not assignable to method's 'this' of type 'C'.
  Object literal may only specify known properties, and 'z' does not exist in type 'C'.


==== tests/cases/compiler/thisBinding.ts (2 errors) ====
    module M {
        export interface I {
    	z;
        }
    
        export class C {
    	public x=0;
    	f(x:I) {
    	    x.e;  // e not found
    	      ~
!!! error TS2339: Property 'e' does not exist on type 'I'.
    	    x.z;  // ok 
    	}
        constructor() {
    	({z:10,f:this.f}).f(<I>({}));
    	  ~~~~
!!! error TS2684: The 'this' context of type '{ z: number; f: (x: I) => void; }' is not assignable to method's 'this' of type 'C'.
!!! error TS2684:   Object literal may only specify known properties, and 'z' does not exist in type 'C'.
        }
        }
    }
    
    class C {
        f(x: number) {
        }
    }