25 lines
775 B
Dart
25 lines
775 B
Dart
// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
// Test for static warnings for member access on classes with @proxy annotation.
|
|
|
|
const isFalse = identical(-0.0, 0);
|
|
|
|
const validProxy = isFalse ? null : proxy;
|
|
const invalidProxy = isFalse ? proxy : null;
|
|
|
|
@validProxy
|
|
class ValidProxy {}
|
|
|
|
@invalidProxy
|
|
class InvalidProxy {}
|
|
|
|
main() {
|
|
try { new InvalidProxy().foo; } catch (e) {} /// 01: static type warning
|
|
try { new InvalidProxy().foo(); } catch (e) {} /// 02: static type warning
|
|
|
|
try { new ValidProxy().foo; } catch (e) {} /// 03: ok
|
|
try { new ValidProxy().foo(); } catch (e) {} /// 04: ok
|
|
}
|