TypeScript/tests/baselines/reference/infinitelyExpandingTypes1.js
2014-08-15 15:49:09 -07:00

33 lines
502 B
TypeScript

//// [infinitelyExpandingTypes1.ts]
interface List<T> {
data: T;
next: List<T>;
owner: List<List<T>>;
}
interface MyList<T> {
data: T;
next: MyList<T>;
owner: MyList<MyList<T>>;
}
var l: List<number>;
var m: MyList<number>;
l == m; // should error
var l2: List<string>;
l == l2; // should error;
l == l; // should not error
//// [infinitelyExpandingTypes1.js]
var l;
var m;
l == m; // should error
var l2;
l == l2; // should error;
l == l; // should not error