**TypeScript Version:** master (cef9d8597914f633f51c15b5ae6f9691c4dcfbc5) **Code** ```ts function create<T, D>(type: T, data: D) { return { type, data }; } const obj = create('x', 1); ``` **Expected behavior:** `obj` has type `{ type: 'x', data: 1 }` **Actual behavior:** `obj` has type `{ type: string, data: number }`