| // 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. | 
 |  | 
 | // @dart = 2.7 | 
 |  | 
 | // Regression test for dart2js inference. Class9.field9b should be known to be | 
 | // potentially `null`. | 
 |  | 
 | import 'package:expect/expect.dart'; | 
 |  | 
 | class Class9 { | 
 |   var field9a; | 
 |   var field9b; | 
 |  | 
 |   Class9() : field9a = 42 { | 
 |     field9b = field9a; | 
 |   } | 
 | } | 
 |  | 
 | class SubClass9a extends Class9 { | 
 |   var field9b; | 
 |  | 
 |   SubClass9a() : field9b = 42; | 
 |  | 
 |   get access => super.field9b; | 
 | } | 
 |  | 
 | class SubClass9b extends Class9 {} | 
 |  | 
 | subclassField5() { | 
 |   new Class9(); | 
 |   new SubClass9b(); | 
 |   return new SubClass9a().access; | 
 | } | 
 |  | 
 | main() { | 
 |   Expect.isTrue(subclassField5() == null); | 
 | } |