-
Notifications
You must be signed in to change notification settings - Fork 12.9k
Closed
Labels
BugA bug in TypeScriptA bug in TypeScriptFixedA PR has been merged for this issueA PR has been merged for this issue
Milestone
Description
TypeScript Version: 2.1.4
Code
function getDate(): Promise<Date> {
return Promise.resolve(new Date());
}
function getFoo(): Promise<{}> {
return Promise.resolve({});
}
function doFoo() : Promise<number> {
// Error: Type 'Promise<Date>' is not assignable to type 'Promise<number>'.
return (
getDate()
.then(() => {
return (
getFoo()
.then(() => {
return 10;
})
);
})
);
}
Expected behavior:
No compilation error
Actual behavior:
Compiler error: Type 'Promise<Date>' is not assignable to type 'Promise<number>'
.
Futher Notes
Changing getFoo
to return any other value, e.g. function getFoo(): Promise<void>
fixes the compilation error.
aluanhaddad
Metadata
Metadata
Assignees
Labels
BugA bug in TypeScriptA bug in TypeScriptFixedA PR has been merged for this issueA PR has been merged for this issue