|  | // Copyright (c) 2016, 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"; | 
|  |  | 
|  | // Duplicate definition checks for `this.x` will check the scopes associated | 
|  | // with the constructor, not all enclosing scopes; so this is not a conflict. | 
|  | var x; | 
|  |  | 
|  | class A { | 
|  | var x; | 
|  | A(this.x) { | 
|  | // In the body the field is in scope, not the initializing formal; | 
|  | // so we can use the setter. | 
|  | x += 1; | 
|  | } | 
|  | } | 
|  |  | 
|  | main() { | 
|  | A a = new A(2); | 
|  | Expect.equals(a.x, 3); | 
|  | } |