mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 04:27:17 +00:00
8e9d1445dd
Change-Id: Ic0c7e51d6be12dba4500f0fc41378466c6043245 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142803 Commit-Queue: Bob Nystrom <rnystrom@google.com> Auto-Submit: Bob Nystrom <rnystrom@google.com> Reviewed-by: Erik Ernst <eernst@google.com>
40 lines
761 B
Dart
40 lines
761 B
Dart
// Copyright (c) 2012, 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.
|
|
|
|
import "package:expect/expect.dart";
|
|
|
|
// Dart test program to test type-based optimization on fields.
|
|
|
|
class A {
|
|
dynamic a = 0;
|
|
var b = 0;
|
|
foo() {
|
|
var c = b + 27;
|
|
for (var i = 0; i < 1; i++) {
|
|
for (var j = 0; j < 1; j++) {
|
|
Expect.equals(50, c + 23);
|
|
}
|
|
}
|
|
return a > 0.2;
|
|
}
|
|
|
|
setA(value) {
|
|
a = value;
|
|
}
|
|
|
|
setB(value) {
|
|
b = value;
|
|
}
|
|
|
|
operator >(other) => other == 0.2;
|
|
}
|
|
|
|
main() {
|
|
var a = new A();
|
|
Expect.isFalse(a.foo());
|
|
a.setA(new A());
|
|
a.setB(0);
|
|
Expect.isTrue(a.foo());
|
|
}
|