<!-- 🚨 STOP 🚨 𝗦𝗧𝗢𝗣 🚨 𝑺𝑻𝑶𝑷 🚨 Half of all issues filed here are duplicates, answered in the FAQ, or not appropriate for the bug tracker. Even if you think you've found a *bug*, please read the FAQ first, especially the Common "Bugs" That Aren't Bugs section! Please help us by doing the following steps before logging an issue: * Search: https://github.com/Microsoft/TypeScript/search?type=Issues * Read the FAQ: https://github.com/Microsoft/TypeScript/wiki/FAQ Please fill in the *entire* template below. --> <!-- Please try to reproduce the issue with `typescript@next`. It may have already been fixed. --> **TypeScript Version:** 3.0.1, vscode 1.26.1 <!-- Search terms you tried before logging this (so others can find this issue more easily) --> **Search Terms:** **Code** ```ts interface A<R> { a(): R } function some1<R>(a: A<R>): R { return null } function some2<R, D extends A<R>>(a: D): R { return null } let out1 = some1({ a() { return 'asd' } }) let out2 = some2({ a() { return 'asd' } }) ``` **Expected behavior:** out1: `string`, out2: `string` **Actual behavior:** out1: `string`, out2: `{}` [**Playground Link**](http://www.typescriptlang.org/play/index.html#src=interface%20A%3CR%3E%20%7B%0D%0A%20%20%20%20a()%3A%20R%0D%0A%7D%0D%0A%0D%0Afunction%20some1%3CR%3E(a%3A%20A%3CR%3E)%3A%20R%20%7B%0D%0A%20%20%20%20return%20null%0D%0A%7D%0D%0A%0D%0Afunction%20some2%3CR%2C%20D%20extends%20A%3CR%3E%3E(a%3A%20D)%3A%20R%20%7B%0D%0A%20%20%20%20return%20null%0D%0A%7D%0D%0A%0D%0Alet%20out1%20%3D%20some1(%7B%0D%0A%20%20%20%20a()%20%7B%0D%0A%20%20%20%20%20%20%20%20return%20'asd'%0D%0A%20%20%20%20%7D%0D%0A%7D)%0D%0A%0D%0Alet%20out2%20%3D%20some2(%7B%0D%0A%20%20%20%20a()%20%7B%0D%0A%20%20%20%20%20%20%20%20return%20'asd'%0D%0A%20%20%20%20%7D%0D%0A%7D)) <!-- A link to a TypeScript Playground "Share" link which demonstrates this behavior --> <!-- **Related Issues:** Did you find other bugs that looked similar? --> <!-- **Related Issues:** [https://github.com/Microsoft/TypeScript/issues/26807](https://github.com/Microsoft/TypeScript/issues/26807)-->