| # 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.md file. |
| |
| main.dart.patch: | |
| // Test that schema changes affect subclasses correctly |
| class A { |
| var x; |
| <<<< "instance is null" |
| var y; |
| ==== "x = 0" |
| ==== ["x = 3","y = null","z = 2"] |
| var y; |
| >>>> |
| } |
| |
| class B extends A { |
| var z; |
| } |
| |
| var instance; |
| |
| main() { |
| if (instance == null) { |
| print('instance is null'); |
| instance = new B(); |
| instance.x = 0; |
| instance.y = 1; |
| instance.z = 2; |
| } else { |
| print('x = ${instance.x}'); |
| if (instance.x == 3) { |
| print('y = ${instance.y}'); |
| print('z = ${instance.z}'); |
| } |
| instance.x = 3; |
| } |
| } |