OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 | 4 |
5 // Test for static warnings for member access on classes with @proxy annotation. | 5 // Test for static warnings for member access on classes with @proxy annotation. |
6 | 6 |
7 import 'dart:core' as core; | 7 import 'dart:core' as core; |
8 | 8 |
9 class Fake { | 9 class Fake { |
10 const Fake(); | 10 const Fake(); |
11 } | 11 } |
12 | 12 |
13 const proxy = const Fake(); | 13 const proxy = const Fake(); |
14 | 14 |
15 @proxy | 15 @proxy |
16 class WrongProxy {} | 16 class WrongProxy {} |
17 | 17 |
18 @core.proxy | 18 @core.proxy |
19 class PrefixProxy {} | 19 class PrefixProxy {} |
20 | 20 |
21 main() { | 21 main() { |
22 try { new WrongProxy().foo; } catch (e) {} /// 01: static type warning | 22 try { new WrongProxy().foo; } catch (e) {} // /// 01: static type warning |
23 try { new WrongProxy().foo(); } catch (e) {} /// 02: static type warning | 23 try { new WrongProxy().foo(); } catch (e) {} // /// 02: static type warning |
24 | 24 |
25 try { new PrefixProxy().foo; } catch (e) {} /// 03: ok | 25 try { new PrefixProxy().foo; } catch (e) {} /// 03: ok |
26 try { new PrefixProxy().foo(); } catch (e) {} /// 04: ok | 26 try { new PrefixProxy().foo(); } catch (e) {} /// 04: ok |
27 } | 27 } |
OLD | NEW |