/* | |
* Copyright (c) 2011, 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. | |
*/ | |
/** | |
* @assertion A final variable is a variable whose binding is fixed upon | |
* initialization; a final variable v will always refer to the same object | |
* after v has been initialized. The declaration of a final variable must | |
* include the modifier final. | |
* It is a static warning if a final instance variable that has been | |
* initialized at its point of declaration is also initialized in a | |
* constructor. | |
* It is a compile-time error if a local variable v is final and v is not | |
* initialized at its point of declaration. | |
* @description Checks that it is a compile error to initialize final instance | |
* variable both in initializing formal and initializer list | |
* (Classes/Constructors/Generative Constructors) | |
* @compile-error | |
* @author rodionov | |
*/ | |
class C { | |
final v; | |
C(this.v) : v = 1 {} | |
} | |
main() { | |
new C(1); | |
} |