blob: 054b41a74da3bb81e9e3d7f1a2fd2e936a6ddf61 [file] [log] [blame]
/*
* Copyright (c) 2019, 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 for element:
*
* These are disallowed in constant collections
*
* @description Checks that a 'for' element is disallowed in a constant
* collections
* @author sgrekhov@unipro.ru
*/
main() {
List<int> list1 = const [for (var i = 1; i < 4; i++) i];
// [error line 17, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const List<int> list2 = [for (var i = 1; i < 4; i++) i];
// [error line 21, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var list3 = const [for (var i = 1; i < 4; i++) i];
// [error line 25, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var list4 = const <int>[for (var i = 1; i < 4; i++) i];
// [error line 29, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const list5 = [for (var i = 1; i < 4; i++) i];
// [error line 33, column 0]
// [analyzer] unspecified
// [cfe] unspecified
List<int> list6 = const [for (var i in [1, 2, 3]) i];
// ^^^^^^^^^^^^^^^^^^^^^^^^^^
// [analyzer] COMPILE_TIME_ERROR.NON_CONSTANT_LIST_ELEMENT
// [cfe] 'for' is not supported in constant expressions.
const List<int> list7 = [for (var i in [1, 2, 3]) i];
// [error line 41, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var list8 = const [for (var i in [1, 2, 3]) i];
// ^^^^^^^^^^^^^^^^^^^^^^^^^^
// [analyzer] COMPILE_TIME_ERROR.NON_CONSTANT_LIST_ELEMENT
// [cfe] 'for' is not supported in constant expressions.
var list9 = const <int>[for (var i in [1, 2, 3]) i];
// ^^^^^^^^^^^^^^^^^^^^^^^^^^
// [analyzer] COMPILE_TIME_ERROR.NON_CONSTANT_LIST_ELEMENT
// [cfe] 'for' is not supported in constant expressions.
const list10 = [for (var i in [1, 2, 3]) i];
// [error line 53, column 0]
// [analyzer] unspecified
// [cfe] unspecified
Set<int> set1 = const {for (var i = 1; i < 4; i++) i};
// [error line 58, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const Set<int> set2 = {for (var i = 1; i < 4; i++) i};
// [error line 62, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var set3 = const {for (var i = 1; i < 4; i++) i};
// [error line 66, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var set4 = const <int>{for (var i = 1; i < 4; i++) i};
// [error line 70, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const set5 = {for (var i = 1; i < 4; i++) i};
// [error line 74, column 0]
// [analyzer] unspecified
// [cfe] unspecified
Set<int> set6 = const {for (var i in [1, 2, 3]) i};
// ^^^^^^^^^^^^^^^^^^^^^^^^^^
// [analyzer] COMPILE_TIME_ERROR.NON_CONSTANT_SET_ELEMENT
// [cfe] 'for' is not supported in constant expressions.
const Set<int> set7 = {for (for (var i in [1, 2, 3]) i};
// [error line 82, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var set8 = const {for (for (var i in [1, 2, 3]) i};
// [error line 86, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var set9 = const <int>{for (for (var i in [1, 2, 3]) i};
// [error line 90, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const set10 = {for (for (var i in [1, 2, 3]) i};
// [error line 94, column 0]
// [analyzer] unspecified
// [cfe] unspecified
Map<int, String> map1 = const {for (var i = 1; i < 4; i++) i: "x"};
// [error line 99, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const Map<int, String> map2 = {for (var i = 1; i < 4; i++) i: "x"};
// [error line 103, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var map3 = const {for (var i = 1; i < 4; i++) i: i};
// [error line 107, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var map4 = const <int, String>{for (var i = 1; i < 4; i++) i: "x"};
// [error line 111, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const map5 = {for (var i = 1; i < 4; i++) i: i};
// [error line 115, column 0]
// [analyzer] unspecified
// [cfe] unspecified
Map<int, String> map6 = const {for (var i in [1, 2, 3]) i: "x"};
// [error line 119, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const Map<int, String> map7 = {for (var i in [1, 2, 3]) i: "x"};
// [error line 123, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var map8 = const {for (var i in [1, 2, 3]) i: i};
// [error line 127, column 0]
// [analyzer] unspecified
// [cfe] unspecified
var map9 = const <int, String>{for (var i in [1, 2, 3]) i: "x"};
// [error line 131, column 0]
// [analyzer] unspecified
// [cfe] unspecified
const map10 = {for (var i in [1, 2, 3]) i: i};
// [error line 135, column 0]
// [analyzer] unspecified
// [cfe] unspecified
}