diff --git a/tests/baselines/reference/baseTypeWrappingInstantiationChain.symbols b/tests/baselines/reference/baseTypeWrappingInstantiationChain.symbols new file mode 100644 index 00000000000..1e8ab089b90 --- /dev/null +++ b/tests/baselines/reference/baseTypeWrappingInstantiationChain.symbols @@ -0,0 +1,69 @@ +=== tests/cases/compiler/baseTypeWrappingInstantiationChain.ts === +class C extends CBase { +>C : Symbol(C, Decl(baseTypeWrappingInstantiationChain.ts, 0, 0)) +>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 0, 8)) +>CBase : Symbol(CBase, Decl(baseTypeWrappingInstantiationChain.ts, 9, 1)) +>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 0, 8)) + + public works() { +>works : Symbol(works, Decl(baseTypeWrappingInstantiationChain.ts, 0, 31)) + + new CBaseBase>(this); +>CBaseBase : Symbol(CBaseBase, Decl(baseTypeWrappingInstantiationChain.ts, 13, 1)) +>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 21, 1)) +>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 0, 8)) +>this : Symbol(C, Decl(baseTypeWrappingInstantiationChain.ts, 0, 0)) + } + public alsoWorks() { +>alsoWorks : Symbol(alsoWorks, Decl(baseTypeWrappingInstantiationChain.ts, 3, 5)) + + new CBase(this); // Should not error, parameter is of type Parameter> +>CBase : Symbol(CBase, Decl(baseTypeWrappingInstantiationChain.ts, 9, 1)) +>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 0, 8)) +>this : Symbol(C, Decl(baseTypeWrappingInstantiationChain.ts, 0, 0)) + } + + public method(t: Wrapper) { } +>method : Symbol(method, Decl(baseTypeWrappingInstantiationChain.ts, 6, 5)) +>t : Symbol(t, Decl(baseTypeWrappingInstantiationChain.ts, 8, 18)) +>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 21, 1)) +>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 0, 8)) +} + +class CBase extends CBaseBase> { +>CBase : Symbol(CBase, Decl(baseTypeWrappingInstantiationChain.ts, 9, 1)) +>T2 : Symbol(T2, Decl(baseTypeWrappingInstantiationChain.ts, 11, 12)) +>CBaseBase : Symbol(CBaseBase, Decl(baseTypeWrappingInstantiationChain.ts, 13, 1)) +>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 21, 1)) +>T2 : Symbol(T2, Decl(baseTypeWrappingInstantiationChain.ts, 11, 12)) + +} + +class CBaseBase { +>CBaseBase : Symbol(CBaseBase, Decl(baseTypeWrappingInstantiationChain.ts, 13, 1)) +>T3 : Symbol(T3, Decl(baseTypeWrappingInstantiationChain.ts, 15, 16)) + + constructor(x: Parameter) { } +>x : Symbol(x, Decl(baseTypeWrappingInstantiationChain.ts, 16, 16)) +>Parameter : Symbol(Parameter, Decl(baseTypeWrappingInstantiationChain.ts, 17, 1)) +>T3 : Symbol(T3, Decl(baseTypeWrappingInstantiationChain.ts, 15, 16)) +} + +class Parameter { +>Parameter : Symbol(Parameter, Decl(baseTypeWrappingInstantiationChain.ts, 17, 1)) +>T4 : Symbol(T4, Decl(baseTypeWrappingInstantiationChain.ts, 19, 16)) + + method(t: T4) { } +>method : Symbol(method, Decl(baseTypeWrappingInstantiationChain.ts, 19, 21)) +>t : Symbol(t, Decl(baseTypeWrappingInstantiationChain.ts, 20, 11)) +>T4 : Symbol(T4, Decl(baseTypeWrappingInstantiationChain.ts, 19, 16)) +} + +class Wrapper { +>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 21, 1)) +>T5 : Symbol(T5, Decl(baseTypeWrappingInstantiationChain.ts, 23, 14)) + + property: T5; +>property : Symbol(property, Decl(baseTypeWrappingInstantiationChain.ts, 23, 19)) +>T5 : Symbol(T5, Decl(baseTypeWrappingInstantiationChain.ts, 23, 14)) +}