At least Chrome unwraps promise values. This makes a different runtime behavior. **TypeScript Version:** 2.7.0-dev.201xxxxx <!-- Search terms you tried before logging this (so others can find this issue more easily) --> **Search Terms:** **Code** ```ts (async function* () {yield Promise.resolve(0)})().next().then(console.log) ``` **Expected behavior:** Outputs `{value: 0, done: false}`. **Actual behavior:** Outputs `{value: Promise, done: false}`. **Playground Link:** <!-- A link to a TypeScript Playground "Share" link which demonstrates this behavior --> **Related Issues:**