diff --git a/tests/baselines/reference/typeofUsedBeforeBlockScoped.js b/tests/baselines/reference/typeofUsedBeforeBlockScoped.js new file mode 100644 index 00000000000..d897158f145 --- /dev/null +++ b/tests/baselines/reference/typeofUsedBeforeBlockScoped.js @@ -0,0 +1,20 @@ +//// [typeofUsedBeforeBlockScoped.ts] +// TODO: Change name of file to typeofUsedBeforeBlockScoped.ts +type T = typeof C & typeof C.s & typeof o & typeof o.n; +class C { + static s = 2; +} +type W = typeof o.n; +let o2: typeof o; +let o = { n: 12 }; + + +//// [typeofUsedBeforeBlockScoped.js] +var C = (function () { + function C() { + } + return C; +}()); +C.s = 2; +var o2; +var o = { n: 12 }; diff --git a/tests/baselines/reference/typeofUsedBeforeBlockScoped.symbols b/tests/baselines/reference/typeofUsedBeforeBlockScoped.symbols new file mode 100644 index 00000000000..dc2e26bfee0 --- /dev/null +++ b/tests/baselines/reference/typeofUsedBeforeBlockScoped.symbols @@ -0,0 +1,33 @@ +=== tests/cases/compiler/typeofUsedBeforeBlockScoped.ts === +// TODO: Change name of file to typeofUsedBeforeBlockScoped.ts +type T = typeof C & typeof C.s & typeof o & typeof o.n; +>T : Symbol(T, Decl(typeofUsedBeforeBlockScoped.ts, 0, 0)) +>C : Symbol(C, Decl(typeofUsedBeforeBlockScoped.ts, 1, 55)) +>C.s : Symbol(C.s, Decl(typeofUsedBeforeBlockScoped.ts, 2, 9)) +>C : Symbol(C, Decl(typeofUsedBeforeBlockScoped.ts, 1, 55)) +>s : Symbol(C.s, Decl(typeofUsedBeforeBlockScoped.ts, 2, 9)) +>o : Symbol(o, Decl(typeofUsedBeforeBlockScoped.ts, 7, 3)) +>o.n : Symbol(n, Decl(typeofUsedBeforeBlockScoped.ts, 7, 9)) +>o : Symbol(o, Decl(typeofUsedBeforeBlockScoped.ts, 7, 3)) +>n : Symbol(n, Decl(typeofUsedBeforeBlockScoped.ts, 7, 9)) + +class C { +>C : Symbol(C, Decl(typeofUsedBeforeBlockScoped.ts, 1, 55)) + + static s = 2; +>s : Symbol(C.s, Decl(typeofUsedBeforeBlockScoped.ts, 2, 9)) +} +type W = typeof o.n; +>W : Symbol(W, Decl(typeofUsedBeforeBlockScoped.ts, 4, 1)) +>o.n : Symbol(n, Decl(typeofUsedBeforeBlockScoped.ts, 7, 9)) +>o : Symbol(o, Decl(typeofUsedBeforeBlockScoped.ts, 7, 3)) +>n : Symbol(n, Decl(typeofUsedBeforeBlockScoped.ts, 7, 9)) + +let o2: typeof o; +>o2 : Symbol(o2, Decl(typeofUsedBeforeBlockScoped.ts, 6, 3)) +>o : Symbol(o, Decl(typeofUsedBeforeBlockScoped.ts, 7, 3)) + +let o = { n: 12 }; +>o : Symbol(o, Decl(typeofUsedBeforeBlockScoped.ts, 7, 3)) +>n : Symbol(n, Decl(typeofUsedBeforeBlockScoped.ts, 7, 9)) + diff --git a/tests/baselines/reference/typeofUsedBeforeBlockScoped.types b/tests/baselines/reference/typeofUsedBeforeBlockScoped.types new file mode 100644 index 00000000000..87cff61425c --- /dev/null +++ b/tests/baselines/reference/typeofUsedBeforeBlockScoped.types @@ -0,0 +1,36 @@ +=== tests/cases/compiler/typeofUsedBeforeBlockScoped.ts === +// TODO: Change name of file to typeofUsedBeforeBlockScoped.ts +type T = typeof C & typeof C.s & typeof o & typeof o.n; +>T : T +>C : typeof C +>C.s : number +>C : typeof C +>s : number +>o : { n: number; } +>o.n : number +>o : { n: number; } +>n : number + +class C { +>C : C + + static s = 2; +>s : number +>2 : 2 +} +type W = typeof o.n; +>W : number +>o.n : number +>o : { n: number; } +>n : number + +let o2: typeof o; +>o2 : { n: number; } +>o : { n: number; } + +let o = { n: 12 }; +>o : { n: number; } +>{ n: 12 } : { n: number; } +>n : number +>12 : 12 + diff --git a/tests/cases/compiler/typeofUsedBeforeBlockScoped.ts b/tests/cases/compiler/typeofUsedBeforeBlockScoped.ts new file mode 100644 index 00000000000..6ba887d195a --- /dev/null +++ b/tests/cases/compiler/typeofUsedBeforeBlockScoped.ts @@ -0,0 +1,8 @@ +// TODO: Change name of file to typeofUsedBeforeBlockScoped.ts +type T = typeof C & typeof C.s & typeof o & typeof o.n; +class C { + static s = 2; +} +type W = typeof o.n; +let o2: typeof o; +let o = { n: 12 };