357 lines
9.8 KiB
Text
357 lines
9.8 KiB
Text
=== tests/cases/conformance/types/localTypes/localTypes1.ts ===
|
|
|
|
function f1() {
|
|
>f1 : Symbol(f1, Decl(localTypes1.ts, 0, 0))
|
|
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 1, 15))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 2, 12))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 3, 10))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 3, 13))
|
|
}
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 4, 5))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 5, 13))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 1, 15))
|
|
}
|
|
interface I {
|
|
>I : Symbol(I, Decl(localTypes1.ts, 7, 5))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 8, 17))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 1, 15))
|
|
}
|
|
type A = I[];
|
|
>A : Symbol(A, Decl(localTypes1.ts, 10, 5))
|
|
>I : Symbol(I, Decl(localTypes1.ts, 7, 5))
|
|
|
|
let a: A = [new C()];
|
|
>a : Symbol(a, Decl(localTypes1.ts, 12, 7))
|
|
>A : Symbol(A, Decl(localTypes1.ts, 10, 5))
|
|
>C : Symbol(C, Decl(localTypes1.ts, 4, 5))
|
|
|
|
a[0].x = E.B;
|
|
>a[0].x : Symbol(I.x, Decl(localTypes1.ts, 8, 17))
|
|
>a : Symbol(a, Decl(localTypes1.ts, 12, 7))
|
|
>x : Symbol(I.x, Decl(localTypes1.ts, 8, 17))
|
|
>E.B : Symbol(E.B, Decl(localTypes1.ts, 3, 10))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 1, 15))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 3, 10))
|
|
|
|
return a;
|
|
>a : Symbol(a, Decl(localTypes1.ts, 12, 7))
|
|
}
|
|
|
|
function f2() {
|
|
>f2 : Symbol(f2, Decl(localTypes1.ts, 15, 1))
|
|
|
|
function g() {
|
|
>g : Symbol(g, Decl(localTypes1.ts, 17, 15))
|
|
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 18, 18))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 19, 16))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 20, 14))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 20, 17))
|
|
}
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 21, 9))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 22, 17))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 18, 18))
|
|
}
|
|
interface I {
|
|
>I : Symbol(I, Decl(localTypes1.ts, 24, 9))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 25, 21))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 18, 18))
|
|
}
|
|
type A = I[];
|
|
>A : Symbol(A, Decl(localTypes1.ts, 27, 9))
|
|
>I : Symbol(I, Decl(localTypes1.ts, 24, 9))
|
|
|
|
let a: A = [new C()];
|
|
>a : Symbol(a, Decl(localTypes1.ts, 29, 11))
|
|
>A : Symbol(A, Decl(localTypes1.ts, 27, 9))
|
|
>C : Symbol(C, Decl(localTypes1.ts, 21, 9))
|
|
|
|
a[0].x = E.B;
|
|
>a[0].x : Symbol(I.x, Decl(localTypes1.ts, 25, 21))
|
|
>a : Symbol(a, Decl(localTypes1.ts, 29, 11))
|
|
>x : Symbol(I.x, Decl(localTypes1.ts, 25, 21))
|
|
>E.B : Symbol(E.B, Decl(localTypes1.ts, 20, 14))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 18, 18))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 20, 14))
|
|
|
|
return a;
|
|
>a : Symbol(a, Decl(localTypes1.ts, 29, 11))
|
|
}
|
|
return g();
|
|
>g : Symbol(g, Decl(localTypes1.ts, 17, 15))
|
|
}
|
|
|
|
function f3(b: boolean) {
|
|
>f3 : Symbol(f3, Decl(localTypes1.ts, 34, 1))
|
|
>b : Symbol(b, Decl(localTypes1.ts, 36, 12))
|
|
|
|
if (true) {
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 37, 15))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 38, 16))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 39, 14))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 39, 17))
|
|
}
|
|
if (b) {
|
|
>b : Symbol(b, Decl(localTypes1.ts, 36, 12))
|
|
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 41, 16))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 42, 21))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 37, 15))
|
|
}
|
|
interface I {
|
|
>I : Symbol(I, Decl(localTypes1.ts, 44, 13))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 45, 25))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 37, 15))
|
|
}
|
|
type A = I[];
|
|
>A : Symbol(A, Decl(localTypes1.ts, 47, 13))
|
|
>I : Symbol(I, Decl(localTypes1.ts, 44, 13))
|
|
|
|
let a: A = [new C()];
|
|
>a : Symbol(a, Decl(localTypes1.ts, 49, 15))
|
|
>A : Symbol(A, Decl(localTypes1.ts, 47, 13))
|
|
>C : Symbol(C, Decl(localTypes1.ts, 41, 16))
|
|
|
|
a[0].x = E.B;
|
|
>a[0].x : Symbol(I.x, Decl(localTypes1.ts, 45, 25))
|
|
>a : Symbol(a, Decl(localTypes1.ts, 49, 15))
|
|
>x : Symbol(I.x, Decl(localTypes1.ts, 45, 25))
|
|
>E.B : Symbol(E.B, Decl(localTypes1.ts, 39, 14))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 37, 15))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 39, 14))
|
|
|
|
return a;
|
|
>a : Symbol(a, Decl(localTypes1.ts, 49, 15))
|
|
}
|
|
else {
|
|
class A {
|
|
>A : Symbol(A, Decl(localTypes1.ts, 53, 14))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 54, 21))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 37, 15))
|
|
}
|
|
interface J {
|
|
>J : Symbol(J, Decl(localTypes1.ts, 56, 13))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 57, 25))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 37, 15))
|
|
}
|
|
type C = J[];
|
|
>C : Symbol(C, Decl(localTypes1.ts, 59, 13))
|
|
>J : Symbol(J, Decl(localTypes1.ts, 56, 13))
|
|
|
|
let c: C = [new A()];
|
|
>c : Symbol(c, Decl(localTypes1.ts, 61, 15))
|
|
>C : Symbol(C, Decl(localTypes1.ts, 59, 13))
|
|
>A : Symbol(A, Decl(localTypes1.ts, 53, 14))
|
|
|
|
c[0].x = E.B;
|
|
>c[0].x : Symbol(J.x, Decl(localTypes1.ts, 57, 25))
|
|
>c : Symbol(c, Decl(localTypes1.ts, 61, 15))
|
|
>x : Symbol(J.x, Decl(localTypes1.ts, 57, 25))
|
|
>E.B : Symbol(E.B, Decl(localTypes1.ts, 39, 14))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 37, 15))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 39, 14))
|
|
|
|
return c;
|
|
>c : Symbol(c, Decl(localTypes1.ts, 61, 15))
|
|
}
|
|
}
|
|
}
|
|
|
|
function f5() {
|
|
>f5 : Symbol(f5, Decl(localTypes1.ts, 66, 1))
|
|
|
|
var z1 = function () {
|
|
>z1 : Symbol(z1, Decl(localTypes1.ts, 69, 7))
|
|
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 69, 26))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 70, 16))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 71, 14))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 71, 17))
|
|
}
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 72, 9))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 73, 17))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 69, 26))
|
|
}
|
|
return new C();
|
|
>C : Symbol(C, Decl(localTypes1.ts, 72, 9))
|
|
}
|
|
var z2 = () => {
|
|
>z2 : Symbol(z2, Decl(localTypes1.ts, 78, 7))
|
|
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 78, 20))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 79, 16))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 80, 14))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 80, 17))
|
|
}
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 81, 9))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 82, 17))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 78, 20))
|
|
}
|
|
return new C();
|
|
>C : Symbol(C, Decl(localTypes1.ts, 81, 9))
|
|
}
|
|
}
|
|
|
|
class A {
|
|
>A : Symbol(A, Decl(localTypes1.ts, 87, 1))
|
|
|
|
constructor() {
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 90, 19))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 91, 16))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 92, 14))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 92, 17))
|
|
}
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 93, 9))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 94, 17))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 90, 19))
|
|
}
|
|
}
|
|
m() {
|
|
>m : Symbol(m, Decl(localTypes1.ts, 97, 5))
|
|
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 98, 9))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 99, 16))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 100, 14))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 100, 17))
|
|
}
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 101, 9))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 102, 17))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 98, 9))
|
|
}
|
|
return new C();
|
|
>C : Symbol(C, Decl(localTypes1.ts, 101, 9))
|
|
}
|
|
get p() {
|
|
>p : Symbol(p, Decl(localTypes1.ts, 106, 5))
|
|
|
|
enum E {
|
|
>E : Symbol(E, Decl(localTypes1.ts, 107, 13))
|
|
|
|
A, B, C
|
|
>A : Symbol(E.A, Decl(localTypes1.ts, 108, 16))
|
|
>B : Symbol(E.B, Decl(localTypes1.ts, 109, 14))
|
|
>C : Symbol(E.C, Decl(localTypes1.ts, 109, 17))
|
|
}
|
|
class C {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 110, 9))
|
|
|
|
x: E;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 111, 17))
|
|
>E : Symbol(E, Decl(localTypes1.ts, 107, 13))
|
|
}
|
|
return new C();
|
|
>C : Symbol(C, Decl(localTypes1.ts, 110, 9))
|
|
}
|
|
}
|
|
|
|
function f6() {
|
|
>f6 : Symbol(f6, Decl(localTypes1.ts, 116, 1))
|
|
|
|
class A {
|
|
>A : Symbol(A, Decl(localTypes1.ts, 118, 15))
|
|
|
|
a: string;
|
|
>a : Symbol(a, Decl(localTypes1.ts, 119, 13))
|
|
}
|
|
function g() {
|
|
>g : Symbol(g, Decl(localTypes1.ts, 121, 5))
|
|
|
|
class B extends A {
|
|
>B : Symbol(B, Decl(localTypes1.ts, 122, 18))
|
|
>A : Symbol(A, Decl(localTypes1.ts, 118, 15))
|
|
|
|
b: string;
|
|
>b : Symbol(b, Decl(localTypes1.ts, 123, 27))
|
|
}
|
|
function h() {
|
|
>h : Symbol(h, Decl(localTypes1.ts, 125, 9))
|
|
|
|
class C extends B {
|
|
>C : Symbol(C, Decl(localTypes1.ts, 126, 22))
|
|
>B : Symbol(B, Decl(localTypes1.ts, 122, 18))
|
|
|
|
c: string;
|
|
>c : Symbol(c, Decl(localTypes1.ts, 127, 31))
|
|
}
|
|
var x = new C();
|
|
>x : Symbol(x, Decl(localTypes1.ts, 130, 15))
|
|
>C : Symbol(C, Decl(localTypes1.ts, 126, 22))
|
|
|
|
x.a = "a";
|
|
>x.a : Symbol(A.a, Decl(localTypes1.ts, 119, 13))
|
|
>x : Symbol(x, Decl(localTypes1.ts, 130, 15))
|
|
>a : Symbol(A.a, Decl(localTypes1.ts, 119, 13))
|
|
|
|
x.b = "b";
|
|
>x.b : Symbol(B.b, Decl(localTypes1.ts, 123, 27))
|
|
>x : Symbol(x, Decl(localTypes1.ts, 130, 15))
|
|
>b : Symbol(B.b, Decl(localTypes1.ts, 123, 27))
|
|
|
|
x.c = "c";
|
|
>x.c : Symbol(C.c, Decl(localTypes1.ts, 127, 31))
|
|
>x : Symbol(x, Decl(localTypes1.ts, 130, 15))
|
|
>c : Symbol(C.c, Decl(localTypes1.ts, 127, 31))
|
|
|
|
return x;
|
|
>x : Symbol(x, Decl(localTypes1.ts, 130, 15))
|
|
}
|
|
return h();
|
|
>h : Symbol(h, Decl(localTypes1.ts, 125, 9))
|
|
}
|
|
return g();
|
|
>g : Symbol(g, Decl(localTypes1.ts, 121, 5))
|
|
}
|
|
|