| // Copyright (c) 2018, 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 If s is a set literal, then it has the form |
| /// const? ('<' type '>')? '{' ... '}' where ... is zero or more comma-separated |
| /// element expressions (potentially with a trailing comma which is otherwise |
| /// ignored). |
| /// @description Checks set literal syntax |
| /// @author sgrekhov@unipro.ru |
| |
| main() { |
| var v1 = const <int?> {,}; |
| // ^ |
| // [analyzer] unspecified |
| // [cfe] unspecified |
| var v2 = const {,}; |
| // ^ |
| // [analyzer] unspecified |
| // [cfe] unspecified |
| var v3 = {,}; |
| // ^ |
| // [analyzer] SYNTACTIC_ERROR.MISSING_IDENTIFIER |
| // [cfe] Expected an identifier, but got ','. |
| var v4 = const <int?> {,,}; |
| // ^^ |
| // [analyzer] unspecified |
| // [cfe] unspecified |
| var v5 = const {,,}; |
| // ^^ |
| // [analyzer] unspecified |
| // [cfe] unspecified |
| var v6 = {,,}; |
| // ^^ |
| // [analyzer] unspecified |
| // [cfe] unspecified |
| } |