* 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
13 lines
490 B
JavaScript
13 lines
490 B
JavaScript
class C {
|
|
foo<X>(x: X): X { return x; }
|
|
foo_<X: number>(x: X): number { return x; }
|
|
bar<X>(x: X): X { return x; }
|
|
qux(x: number): number { return x; }
|
|
}
|
|
class D extends C {
|
|
foo(x: number): number { return x; } // error (specialization, see below)
|
|
foo_(x: number): number { return x; } // OK, but only because the overridden foo accepts no more than number and returns exactly number
|
|
bar<X>(x: X): X { return x; } // OK
|
|
qux<X>(x: X): X { return x; } // OK (generalization)
|
|
}
|