// 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 required formal parameter may be specied in one of three ways: | |
/// | |
/// • By means of a function signature that names the parameter and describes | |
/// its type as a function type. It is a compile-time error if any default | |
/// values are specied in the signature of such a function type. | |
/// • As an initializing formal, which is only valid as a parameter to a | |
/// generative constructor. | |
/// • Via an ordinary variable declaration | |
/// | |
/// normalFormalParameter: | |
/// functionSignature | | |
/// fieldFormalParameter | | |
/// simpleFormalParameter | |
/// ; | |
/// simpleFormalParameter: | |
/// declaredIdentifier | | |
/// metadata identifier | |
/// ; | |
/// fieldFormalParameter: | |
/// metadata finalConstVarOrType? this '.' identifier formalParameterList? | |
/// ; | |
/// @description Checks that a functionSignature parameter cannot be final. | |
/// @author kaigorodov | |
func(final x()) { | |
// ^ | |
// [analyzer] unspecified | |
// [cfe] unspecified | |
return x(); | |
} | |
main() { | |
func(() {}); | |
} |