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 const isFalse = identical(-0.0, 0); | 7 const isFalse = identical(-0.0, 0); |
8 | 8 |
9 const validProxy = isFalse ? null : proxy; | 9 const validProxy = isFalse ? null : proxy; |
10 const invalidProxy = isFalse ? proxy : null; | 10 const invalidProxy = isFalse ? proxy : null; |
11 | 11 |
12 @validProxy | 12 @validProxy |
13 class ValidProxy {} | 13 class ValidProxy {} |
14 | 14 |
15 @invalidProxy | 15 @invalidProxy |
16 class InvalidProxy {} | 16 class InvalidProxy {} |
17 | 17 |
18 main() { | 18 main() { |
19 try { new InvalidProxy().foo; } catch (e) {} /// 01: static type warning | 19 try { new InvalidProxy().foo; } catch (e) {} //# 01: static type warning |
20 try { new InvalidProxy().foo(); } catch (e) {} /// 02: static type warning | 20 try { new InvalidProxy().foo(); } catch (e) {} //# 02: static type warning |
21 | 21 |
22 try { new ValidProxy().foo; } catch (e) {} /// 03: ok | 22 try { new ValidProxy().foo; } catch (e) {} //# 03: ok |
23 try { new ValidProxy().foo(); } catch (e) {} /// 04: ok | 23 try { new ValidProxy().foo(); } catch (e) {} //# 04: ok |
24 } | 24 } |
OLD | NEW |