1 2 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 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
=== tests/cases/conformance/types/nonPrimitive/nonPrimitiveInFunction.ts ===
function takeObject(o: object) {}
>takeObject : (o: object) => void
>o : object
function returnObject(): object {
>returnObject : () => object
return {};
>{} : {}
}
var nonPrimitive: object;
>nonPrimitive : object
var primitive: boolean;
>primitive : boolean
takeObject(nonPrimitive);
>takeObject(nonPrimitive) : void
>takeObject : (o: object) => void
>nonPrimitive : object
nonPrimitive = returnObject();
>nonPrimitive = returnObject() : object
>nonPrimitive : object
>returnObject() : object
>returnObject : () => object
takeObject(primitive); // expect error
>takeObject(primitive) : void
>takeObject : (o: object) => void
>primitive : boolean
primitive = returnObject(); // expect error
>primitive = returnObject() : object
>primitive : boolean
>returnObject() : object
>returnObject : () => object
function returnError(): object {
>returnError : () => object
var ret = 123;
>ret : number
>123 : 123
return ret; // expect error
>ret : number
}
|