noImplicitAnyInCastExpression.ts(9,2): error TS2352: Conversion of type '{ a: null; }' to type 'IFoo' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
  Property 'b' is missing in type '{ a: null; }' but required in type 'IFoo'.
noImplicitAnyInCastExpression.ts(12,2): error TS2352: Conversion of type '{ a: number; b: undefined; }' to type 'IFoo' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
  Types of property 'b' are incompatible.
    Type 'undefined' is not comparable to type 'string'.
noImplicitAnyInCastExpression.ts(15,2): error TS2352: Conversion of type '{ c: null; }' to type 'IFoo' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
  Type '{ c: null; }' is missing the following properties from type 'IFoo': a, b


==== noImplicitAnyInCastExpression.ts (3 errors) ====
    // verify no noImplictAny errors reported with cast expression
    
    interface IFoo {
        a: number;
        b: string;
    }
    
    // Expr type not assignable to target type
    (<IFoo>{ a: null });
     ~~~~~~~~~~~~~~~~~
!!! error TS2352: Conversion of type '{ a: null; }' to type 'IFoo' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
!!! error TS2352:   Property 'b' is missing in type '{ a: null; }' but required in type 'IFoo'.
!!! related TS2728 noImplicitAnyInCastExpression.ts:5:5: 'b' is declared here.
    
    // Expr type assignable to target type
    (<IFoo>{ a: 2, b: undefined });
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2352: Conversion of type '{ a: number; b: undefined; }' to type 'IFoo' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
!!! error TS2352:   Types of property 'b' are incompatible.
!!! error TS2352:     Type 'undefined' is not comparable to type 'string'.
    
    // Neither types is assignable to each other
    (<IFoo>{ c: null });
     ~~~~~~~~~~~~~~~~~
!!! error TS2352: Conversion of type '{ c: null; }' to type 'IFoo' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
!!! error TS2352:   Type '{ c: null; }' is missing the following properties from type 'IFoo': a, b