=== tests/cases/conformance/types/typeRelationships/assignmentCompatibility/nullAssignableToEveryType.ts === class C { >C : C foo: string; >foo : string } var ac: C; >ac : C >C : C interface I { >I : I foo: string; >foo : string } var ai: I; >ai : I >I : I enum E { A } >E : E >A : E var ae: E; >ae : E >E : E var b: number = null; >b : number var c: string = null; >c : string var d: boolean = null; >d : boolean var e: Date = null; >e : Date >Date : Date var f: any = null; >f : any var g: void = null; >g : void var h: Object = null; >h : Object >Object : Object var i: {} = null; >i : {} var j: () => {} = null; >j : () => {} var k: Function = null; >k : Function >Function : Function var l: (x: number) => string = null; >l : (x: number) => string >x : number ac = null; >ac = null : null >ac : C ai = null; >ai = null : null >ai : I ae = null; >ae = null : null >ae : E var m: number[] = null; >m : number[] var n: { foo: string } = null; >n : { foo: string; } >foo : string var o: (x: T) => T = null; >o : (x: T) => T >T : T >x : T >T : T >T : T var p: Number = null; >p : Number >Number : Number var q: String = null; >q : String >String : String function foo(x: T, y: U, z: V) { >foo : (x: T, y: U, z: V) => void >T : T >U : U >V : V >Date : Date >x : T >T : T >y : U >U : U >z : V >V : V x = null; >x = null : null >x : T y = null; >y = null : null >y : U z = null; >z = null : null >z : V } //function foo(x: T, y: U, z: V) { // x = null; // y = null; // z = null; //}