OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 // VMOptions=--enable_type_checks | 4 // VMOptions=--enable_type_checks |
5 | 5 |
6 library Issue1363Test.dart; | 6 library Issue1363Test.dart; |
| 7 |
7 import 'issue1363_lib.dart' as lib; | 8 import 'issue1363_lib.dart' as lib; |
8 | 9 |
9 main() { | 10 main() { |
10 new C().test(); | 11 new C().test(); |
11 } | 12 } |
12 | 13 |
13 class C { | 14 class C { |
14 lib.Cup<lib.C> libCup; | 15 lib.Cup<lib.C> libCup; |
15 lib.Cup<C> myCup; | 16 lib.Cup<C> myCup; |
16 | 17 |
17 C(); | 18 C(); |
18 | 19 |
19 test() { | 20 test() { |
20 myCup = new lib.Cup<C>(new C()); | 21 myCup = new lib.Cup<C>(new C()); |
21 libCup = new lib.Cup<lib.C>(new lib.C()); | 22 libCup = new lib.Cup<lib.C>(new lib.C()); |
22 | 23 |
23 C contents = myCup.getContents(); // expect no warning or error | 24 C contents = myCup.getContents(); // expect no warning or error |
24 bool hasThrown = false; | 25 bool hasThrown = false; |
25 try { | 26 try { |
26 contents = libCup.getContents(); //# static type warning | 27 contents = libCup.getContents(); //# static type warning |
27 } on TypeError catch (e) { | 28 } on TypeError catch (e) { |
28 hasThrown = true; | 29 hasThrown = true; |
29 } | 30 } |
30 } | 31 } |
31 } | 32 } |
OLD | NEW |