| Index: tests/language_strong/cyclic_type_test.dart
|
| diff --git a/tests/language_strong/cyclic_type_test.dart b/tests/language_strong/cyclic_type_test.dart
|
| index 2fc5766ce641c638f51835d9632aeaa049d64361..216f1eba4a5d6b42c8d51a4970dab456beaa3c2e 100644
|
| --- a/tests/language_strong/cyclic_type_test.dart
|
| +++ b/tests/language_strong/cyclic_type_test.dart
|
| @@ -11,21 +11,21 @@ class Base<T> {
|
| }
|
|
|
| // Derived<T> is contractive.
|
| -class Derived<T> extends Base<Derived<T>> {} // /// 00: ok
|
| +class Derived<T> extends Base<Derived<T>> {} // //# 00: ok
|
|
|
| // Derived<T> is contractive.
|
| -class Derived<T> extends Base<Derived<Derived<int>>> {} // /// 01: ok
|
| +class Derived<T> extends Base<Derived<Derived<int>>> {} // //# 01: ok
|
|
|
| // Derived<T> is non-contractive.
|
| -class Derived<T> extends Base<Derived<Derived<T>>> {} // /// 02: ok
|
| +class Derived<T> extends Base<Derived<Derived<T>>> {} // //# 02: ok
|
|
|
| // Derived1<U> and Derived2<V> are contractive.
|
| -class Derived1<U> extends Base<Derived2<U>> {} // /// 03: ok
|
| -class Derived2<V> extends Base<Derived1<V>> {} // /// 03: ok
|
| +class Derived1<U> extends Base<Derived2<U>> {} // //# 03: ok
|
| +class Derived2<V> extends Base<Derived1<V>> {} // //# 03: ok
|
|
|
| // Derived1<U> and Derived2<V> are non-contractive.
|
| -class Derived1<U> extends Base<Derived2<U>> {} // /// 04: ok
|
| -class Derived2<V> extends Base<Derived1<Derived2<V>>> {} // /// 04: ok
|
| +class Derived1<U> extends Base<Derived2<U>> {} // //# 04: ok
|
| +class Derived2<V> extends Base<Derived1<Derived2<V>>> {} // //# 04: ok
|
|
|
| main() {
|
| // In the tests below we test that we get "int" and "bool" when calling
|
| @@ -34,39 +34,39 @@ main() {
|
| // core types so we make sure to handle these specifically in the compiler.
|
|
|
| var d;
|
| - d = new Derived(); // /// 00: continued
|
| - Expect.equals("Derived", d.t.toString()); // /// 00: continued
|
| - d = new Derived<bool>(); // /// 00: continued
|
| - Expect.equals("Derived<bool>", d.t.toString()); // /// 00: continued
|
| - d = new Derived<Derived>(); // /// 00: continued
|
| - Expect.equals("Derived<Derived>", d.t.toString()); // /// 00: continued
|
| + d = new Derived(); // //# 00: continued
|
| + Expect.equals("Derived", d.t.toString()); // //# 00: continued
|
| + d = new Derived<bool>(); // //# 00: continued
|
| + Expect.equals("Derived<bool>", d.t.toString()); // //# 00: continued
|
| + d = new Derived<Derived>(); // //# 00: continued
|
| + Expect.equals("Derived<Derived>", d.t.toString()); // //# 00: continued
|
|
|
| - d = new Derived(); // /// 01: continued
|
| + d = new Derived(); // //# 01: continued
|
|
|
| - Expect.equals("Derived<Derived<int>>", d.t.toString()); // /// 01: continued
|
| - d = new Derived<bool>(); // /// 01: continued
|
| - Expect.equals("Derived<Derived<int>>", d.t.toString()); // /// 01: continued
|
| - d = new Derived<Derived>(); // /// 01: continued
|
| - Expect.equals("Derived<Derived<int>>", d.t.toString()); // /// 01: continued
|
| + Expect.equals("Derived<Derived<int>>", d.t.toString()); // //# 01: continued
|
| + d = new Derived<bool>(); // //# 01: continued
|
| + Expect.equals("Derived<Derived<int>>", d.t.toString()); // //# 01: continued
|
| + d = new Derived<Derived>(); // //# 01: continued
|
| + Expect.equals("Derived<Derived<int>>", d.t.toString()); // //# 01: continued
|
|
|
| - d = new Derived(); // /// 02: continued
|
| - Expect.equals("Derived<Derived>", d.t.toString()); // /// 02: continued
|
| - d = new Derived<bool>(); // /// 02: continued
|
| - Expect.equals("Derived<Derived<bool>>", d.t.toString()); // /// 02: continued
|
| - d = new Derived<Derived>(); // /// 02: continued
|
| - Expect.equals("Derived<Derived<Derived>>", d.t.toString()); // /// 02: continued
|
| + d = new Derived(); // //# 02: continued
|
| + Expect.equals("Derived<Derived>", d.t.toString()); // //# 02: continued
|
| + d = new Derived<bool>(); // //# 02: continued
|
| + Expect.equals("Derived<Derived<bool>>", d.t.toString()); // //# 02: continued
|
| + d = new Derived<Derived>(); // //# 02: continued
|
| + Expect.equals("Derived<Derived<Derived>>", d.t.toString()); // //# 02: continued
|
|
|
| - d = new Derived1(); // /// 03: continued
|
| - Expect.equals("Derived2", d.t.toString()); // /// 03: continued
|
| - d = new Derived2(); // /// 03: continued
|
| - Expect.equals("Derived1", d.t.toString()); // /// 03: continued
|
| - d = new Derived2<Derived1<int>>(); // /// 03: continued
|
| - Expect.equals("Derived1<Derived1<int>>", d.t.toString()); // /// 03: continued
|
| + d = new Derived1(); // //# 03: continued
|
| + Expect.equals("Derived2", d.t.toString()); // //# 03: continued
|
| + d = new Derived2(); // //# 03: continued
|
| + Expect.equals("Derived1", d.t.toString()); // //# 03: continued
|
| + d = new Derived2<Derived1<int>>(); // //# 03: continued
|
| + Expect.equals("Derived1<Derived1<int>>", d.t.toString()); // //# 03: continued
|
|
|
| - d = new Derived1(); // /// 04: continued
|
| - Expect.equals("Derived2", d.t.toString()); // /// 04: continued
|
| - d = new Derived2(); // /// 04: continued
|
| - Expect.equals("Derived1<Derived2>", d.t.toString()); // /// 04: continued
|
| - d = new Derived2<Derived1<int>>(); // /// 04: continued
|
| - Expect.equals("Derived1<Derived2<Derived1<int>>>", d.t.toString()); // /// 04: continued
|
| + d = new Derived1(); // //# 04: continued
|
| + Expect.equals("Derived2", d.t.toString()); // //# 04: continued
|
| + d = new Derived2(); // //# 04: continued
|
| + Expect.equals("Derived1<Derived2>", d.t.toString()); // //# 04: continued
|
| + d = new Derived2<Derived1<int>>(); // //# 04: continued
|
| + Expect.equals("Derived1<Derived2<Derived1<int>>>", d.t.toString()); // //# 04: continued
|
| }
|
|
|