59 lines
2.6 KiB
Plaintext
59 lines
2.6 KiB
Plaintext
=== tests/cases/compiler/assignmentNonObjectTypeConstraints.ts ===
|
|
const enum E { A, B, C }
|
|
>E : Symbol(E, Decl(assignmentNonObjectTypeConstraints.ts, 0, 0))
|
|
>A : Symbol(E.A, Decl(assignmentNonObjectTypeConstraints.ts, 0, 14))
|
|
>B : Symbol(E.B, Decl(assignmentNonObjectTypeConstraints.ts, 0, 17))
|
|
>C : Symbol(E.C, Decl(assignmentNonObjectTypeConstraints.ts, 0, 20))
|
|
|
|
function foo<T extends number>(x: T) {
|
|
>foo : Symbol(foo, Decl(assignmentNonObjectTypeConstraints.ts, 0, 24))
|
|
>T : Symbol(T, Decl(assignmentNonObjectTypeConstraints.ts, 2, 13))
|
|
>x : Symbol(x, Decl(assignmentNonObjectTypeConstraints.ts, 2, 31))
|
|
>T : Symbol(T, Decl(assignmentNonObjectTypeConstraints.ts, 2, 13))
|
|
|
|
var y: number = x; // Ok
|
|
>y : Symbol(y, Decl(assignmentNonObjectTypeConstraints.ts, 3, 7))
|
|
>x : Symbol(x, Decl(assignmentNonObjectTypeConstraints.ts, 2, 31))
|
|
}
|
|
|
|
foo(5);
|
|
>foo : Symbol(foo, Decl(assignmentNonObjectTypeConstraints.ts, 0, 24))
|
|
|
|
foo(E.A);
|
|
>foo : Symbol(foo, Decl(assignmentNonObjectTypeConstraints.ts, 0, 24))
|
|
>E.A : Symbol(E.A, Decl(assignmentNonObjectTypeConstraints.ts, 0, 14))
|
|
>E : Symbol(E, Decl(assignmentNonObjectTypeConstraints.ts, 0, 0))
|
|
>A : Symbol(E.A, Decl(assignmentNonObjectTypeConstraints.ts, 0, 14))
|
|
|
|
class A { a }
|
|
>A : Symbol(A, Decl(assignmentNonObjectTypeConstraints.ts, 7, 9))
|
|
>a : Symbol(A.a, Decl(assignmentNonObjectTypeConstraints.ts, 9, 9))
|
|
|
|
class B { b }
|
|
>B : Symbol(B, Decl(assignmentNonObjectTypeConstraints.ts, 9, 13))
|
|
>b : Symbol(B.b, Decl(assignmentNonObjectTypeConstraints.ts, 10, 9))
|
|
|
|
function bar<T extends A | B>(x: T) {
|
|
>bar : Symbol(bar, Decl(assignmentNonObjectTypeConstraints.ts, 10, 13))
|
|
>T : Symbol(T, Decl(assignmentNonObjectTypeConstraints.ts, 12, 13))
|
|
>A : Symbol(A, Decl(assignmentNonObjectTypeConstraints.ts, 7, 9))
|
|
>B : Symbol(B, Decl(assignmentNonObjectTypeConstraints.ts, 9, 13))
|
|
>x : Symbol(x, Decl(assignmentNonObjectTypeConstraints.ts, 12, 30))
|
|
>T : Symbol(T, Decl(assignmentNonObjectTypeConstraints.ts, 12, 13))
|
|
|
|
var y: A | B = x; // Ok
|
|
>y : Symbol(y, Decl(assignmentNonObjectTypeConstraints.ts, 13, 7))
|
|
>A : Symbol(A, Decl(assignmentNonObjectTypeConstraints.ts, 7, 9))
|
|
>B : Symbol(B, Decl(assignmentNonObjectTypeConstraints.ts, 9, 13))
|
|
>x : Symbol(x, Decl(assignmentNonObjectTypeConstraints.ts, 12, 30))
|
|
}
|
|
|
|
bar(new A);
|
|
>bar : Symbol(bar, Decl(assignmentNonObjectTypeConstraints.ts, 10, 13))
|
|
>A : Symbol(A, Decl(assignmentNonObjectTypeConstraints.ts, 7, 9))
|
|
|
|
bar(new B);
|
|
>bar : Symbol(bar, Decl(assignmentNonObjectTypeConstraints.ts, 10, 13))
|
|
>B : Symbol(B, Decl(assignmentNonObjectTypeConstraints.ts, 9, 13))
|
|
|