| Index: pkg/front_end/testcases/inference/infer_field_override_multiple.dart
 | 
| diff --git a/pkg/front_end/testcases/inference/infer_field_override_multiple.dart b/pkg/front_end/testcases/inference/infer_field_override_multiple.dart
 | 
| new file mode 100644
 | 
| index 0000000000000000000000000000000000000000..4003e8cf60ad4f1dbcf8d27863b7128957d9a294
 | 
| --- /dev/null
 | 
| +++ b/pkg/front_end/testcases/inference/infer_field_override_multiple.dart
 | 
| @@ -0,0 +1,43 @@
 | 
| +// Copyright (c) 2017, 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.
 | 
| +
 | 
| +/*@testedFeatures=inference*/
 | 
| +library test;
 | 
| +
 | 
| +abstract class A {
 | 
| +  int get x;
 | 
| +}
 | 
| +
 | 
| +abstract class B {
 | 
| +  int get x;
 | 
| +}
 | 
| +
 | 
| +abstract class C {
 | 
| +  num get x;
 | 
| +}
 | 
| +
 | 
| +abstract class D {
 | 
| +  double get x;
 | 
| +}
 | 
| +
 | 
| +// Superclasses have a consistent type for `x` so inferrence succeeds.
 | 
| +class E extends A implements B {
 | 
| +  var /*@topType=int*/ x;
 | 
| +}
 | 
| +
 | 
| +// Superclasses don't have a consistent type for `x` so inference fails, even if
 | 
| +// the types are related.
 | 
| +class F extends A implements C {
 | 
| +  var /*@topType=dynamic*/ x;
 | 
| +}
 | 
| +
 | 
| +class G extends A implements D {
 | 
| +  var /*@topType=dynamic*/ x;
 | 
| +}
 | 
| +
 | 
| +class H extends C implements D {
 | 
| +  var /*@topType=dynamic*/ x;
 | 
| +}
 | 
| +
 | 
| +main() {}
 | 
| 
 |