TypeScript/tests/baselines/reference/assignmentToObjectAndFunction.errors.txt

41 lines
1.3 KiB
Plaintext

==== tests/cases/compiler/assignmentToObjectAndFunction.ts (3 errors) ====
var errObj: Object = { toString: 0 }; // Error, incompatible toString
~~~~~~
!!! Type '{ toString: number; }' is not assignable to type 'Object':
!!! Types of property 'toString' are incompatible:
!!! Type 'number' is not assignable to type '() => string'.
var goodObj: Object = {
toString(x?) {
return "";
}
}; // Ok, because toString is a subtype of Object's toString
var errFun: Function = {}; // Error for no call signature
~~~~~~
!!! Type '{}' is not assignable to type 'Function':
!!! Property 'apply' is missing in type '{}'.
function foo() { }
module foo {
export var boom = 0;
}
var goodFundule: Function = foo; // ok
function bar() { }
module bar {
export function apply(thisArg: string, argArray?: string) { }
}
var goodFundule2: Function = bar; // ok
function bad() { }
module bad {
export var apply = 0;
}
var badFundule: Function = bad; // error
~~~~~~~~~~
!!! Type 'typeof bad' is not assignable to type 'Function':
!!! Types of property 'apply' are incompatible:
!!! Type 'number' is not assignable to type '(thisArg: any, argArray?: any) => any'.