There's a [Stack Overflow question](https://stackoverflow.com/q/73586483/2887218) that seems to be related to this PR: ```ts interface Baz { foo: { a: number }; } const createDefaultExample = <K extends keyof Baz>(x: K): Baz[K] & { x: K; } => { return { a: 0, x }; // okay in TS4.7, error in TS4.8 } ``` [Playground link](https://www.typescriptlang.org/play?ts=4.8.2#code/JYOwLgpgTgZghgYwgAgEJwF7IN4ChnIwD2RAXDsnOSAK4C2ARtMgL4DcuLuuCRIAzmGQIoEOJAAiEeDQA2YAKIAPOHQAOslAF5kAHgDSyCEsggAJv2QBrCAE8iMNJgB8ACiXl9ASnLoMAbX0AXWQAMgoPZH02VmQtZxx8ZFEwGigQCipkAAYAGmQlVhiAemLkIis4W2RQZAAVAGUAFgA6AHZ86CgiKBqMxtaADk5uUuQhluyAWjMIADcWgCZsxeWANgBGJprLMAALFBhgKEFkMGA6FH2UOAYiOZRgSzgMrp6gA) Looks like the fix for #49520 might have broken this. Is it a bug and should this be filed as such? Or is it intended in some way? --- EDIT: Looks like the above was fixed by #50261 but this one persists: ```ts type Foo<K> = K extends unknown ? { a: number } : unknown const createDefaultExample = <K,>(x: K): Foo<K> & { x: K; } => { return { a: 1, x: x }; // okay in TS 4.7.4, error in TS 4.8.2 } ``` [Playground link to code](https://www.typescriptlang.org/play?ts=4.8.2#code/C4TwDgpgBAYg9nAPAaQHxQLxWVCAPYCAOwBMBnKAVyIGsi4B3IqAfigG8oBDALiiMoBbAEYQATlAC+UPtTqMiAKADGcImWBRlYiF0IARCADMulADbAAoni6CwZ6FhQAaVAAo8fZAEo+8JGhQAGQcUJ7YANxSmOjsilBQOsCUYsycvFAAjM5hfHhSUQD0hVBwNFwgUACWzAAqAMpQACwAdADsLU054mJwEjVQDc0tABwtAEyKkoqKQA) Same question, I guess... bug? Not bug? New issue? _Originally posted by @jcalz in https://github.com/microsoft/TypeScript/issues/49503#issuecomment-1235811067_