// Repro for #5712 interface Ref { prop: T; } interface Container { m1: Container>; m2: T; } declare function foo(x: () => Container>): void; let a: () => Container>; foo(a); // Repro for #25498 function test(): {[A in "foo"]: A} { return {foo: "bar"}; } // Repro for #32358 const foo = { bar: 'a' }; const x = ({ [foo.bar]: c }) => undefined;