Files
test-repo/tests/flow/rec/test.js
T
Christopher Chedeau 3375cfe605 Move tests around (#454)
* new_tests

* move_all_clobbered_tests

* remove all the tests that no longer exist

* re-run flow tests

* Move all the flow tests to tests/flow and prettier to tests/

* Move prettier tests to their own folders

* Add jsfmt files

* run prettier snapshot tests
2017-01-24 14:35:37 -08:00

17 lines
458 B
JavaScript

class P<X> { x: X; } // this is like Promise
type Pstar<X> = X | Pstar<P<X>>; // this is like Promise*
var p: P<number> = new P;
(p.x: string); // error
var pstar: Pstar<number> = 0; // OK
(pstar: number); // error, but limit potentially unbounded number of errors!
// e.g., P<number> ~/~ number, P<P<number>> ~/~ number, ...
pstar = p; // OK
(pstar.x: string); // error
pstar = (new P: P<P<number>>); // OK
(pstar.x: string); // error