|
| 1 | +=== tests/cases/compiler/classVarianceResolveCircularity.ts === |
| 2 | +// Issue #52813 |
| 3 | + |
| 4 | +class Bar<T> { |
| 5 | +>Bar : Symbol(Bar, Decl(classVarianceResolveCircularity.ts, 0, 0)) |
| 6 | +>T : Symbol(T, Decl(classVarianceResolveCircularity.ts, 2, 10)) |
| 7 | + |
| 8 | + num!: number; // Swap to remove error |
| 9 | +>num : Symbol(Bar.num, Decl(classVarianceResolveCircularity.ts, 2, 14)) |
| 10 | + |
| 11 | + Value = callme(this).num; |
| 12 | +>Value : Symbol(Bar.Value, Decl(classVarianceResolveCircularity.ts, 3, 17)) |
| 13 | +>callme(this).num : Symbol(Bar.num, Decl(classVarianceResolveCircularity.ts, 2, 14)) |
| 14 | +>callme : Symbol(callme, Decl(classVarianceResolveCircularity.ts, 6, 1), Decl(classVarianceResolveCircularity.ts, 7, 47)) |
| 15 | +>this : Symbol(Bar, Decl(classVarianceResolveCircularity.ts, 0, 0)) |
| 16 | +>num : Symbol(Bar.num, Decl(classVarianceResolveCircularity.ts, 2, 14)) |
| 17 | + |
| 18 | + Field: number = callme(this).num; |
| 19 | +>Field : Symbol(Bar.Field, Decl(classVarianceResolveCircularity.ts, 4, 29)) |
| 20 | +>callme(this).num : Symbol(Bar.num, Decl(classVarianceResolveCircularity.ts, 2, 14)) |
| 21 | +>callme : Symbol(callme, Decl(classVarianceResolveCircularity.ts, 6, 1), Decl(classVarianceResolveCircularity.ts, 7, 47)) |
| 22 | +>this : Symbol(Bar, Decl(classVarianceResolveCircularity.ts, 0, 0)) |
| 23 | +>num : Symbol(Bar.num, Decl(classVarianceResolveCircularity.ts, 2, 14)) |
| 24 | +} |
| 25 | +declare function callme(x: Bar<any>): Bar<any>; |
| 26 | +>callme : Symbol(callme, Decl(classVarianceResolveCircularity.ts, 6, 1), Decl(classVarianceResolveCircularity.ts, 7, 47)) |
| 27 | +>x : Symbol(x, Decl(classVarianceResolveCircularity.ts, 7, 24)) |
| 28 | +>Bar : Symbol(Bar, Decl(classVarianceResolveCircularity.ts, 0, 0)) |
| 29 | +>Bar : Symbol(Bar, Decl(classVarianceResolveCircularity.ts, 0, 0)) |
| 30 | + |
| 31 | +declare function callme(x: object): string; |
| 32 | +>callme : Symbol(callme, Decl(classVarianceResolveCircularity.ts, 6, 1), Decl(classVarianceResolveCircularity.ts, 7, 47)) |
| 33 | +>x : Symbol(x, Decl(classVarianceResolveCircularity.ts, 8, 24)) |
| 34 | + |
0 commit comments