You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if((let final dynamic #t1 = #0#0! in let final dynamic #t2 = x = #0#0! in true) || #0#0 is{ForNonNullableByDefault} core::String && (let final dynamic #t3 = x = #0#0 in true)) {
if((let final core::int? #t1 = #0#0! in let final core::int? #t2 = x = #0#0! in true) || #0#0 is{ForNonNullableByDefault} core::String && (let final core::int? #t3 = x = #0#0 in true)) {
if((let final dynamic #t1 = #0#0! in let final dynamic #t2 = x = #0#0! in true) || #0#0 is{ForNonNullableByDefault} core::String && (let final dynamic #t3 = x = #0#0 in true)) {
if((let final dynamic #t1 = #0#0! in let final dynamic #t2 = x = #0#0! in true) || #0#0 is{ForNonNullableByDefault} core::String && (let final dynamic #t3 = x = #0#0 in true)) {
if((let final core::int? #t1 = #0#0! in let final core::int? #t2 = x = #0#0! in true) || #0#0 is{ForNonNullableByDefault} core::String && (let final core::int? #t3 = x = #0#0 in true)) {
// pkg/front_end/testcases/patterns/issue51971_2.dart:6:27: Error: Read of a non-const variable is not a constant expression.
6
+
// if (x1 case int a1 && < a1 || int a1) { // Error.
7
+
// ^
8
+
//
9
+
// pkg/front_end/testcases/patterns/issue51971_2.dart:8:44: Error: Read of a non-const variable is not a constant expression.
10
+
// } else if (x1 case int a1 || int a1 && < a1) { // Error.
11
+
// ^
12
+
//
5
13
// pkg/front_end/testcases/patterns/issue51971_2.dart:27:22: Error: Read of a non-const variable is not a constant expression.
6
14
// case int a3 && < a3: // Error.
7
15
// ^
@@ -28,15 +36,17 @@ import "dart:collection" as col;
28
36
29
37
static method test1(dynamic x1) → dynamic {
30
38
{
31
-
hoisted dynamic a1;
39
+
hoisted core::int a1;
32
40
final synthesized dynamic #0#0 = x1;
33
-
if(#0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t1 = a1 = #0#0 in true) && #0#0.{core::num::<}(#C1){(core::num) → core::bool} || #0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t2 = a1 = #0#0 in true)) {
41
+
final const synthesized core::int #0#1 = invalid-expression "Read of a non-const variable is not a constant expression.";
42
+
if(#0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t1 = a1 = #0#0{core::int} in true) && #0#0.{core::num::<}(invalid-expression "Read of a non-const variable is not a constant expression."){(core::num) → core::bool} || #0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t2 = a1 = #0#0{core::int} in true)) {
34
43
return a1;
35
44
}
36
45
else {
37
-
hoisted dynamic a1;
46
+
hoisted core::int a1;
38
47
final synthesized dynamic #1#0 = x1;
39
-
if(#1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t3 = a1 = #1#0 in true) || #1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t4 = a1 = #1#0 in true) && #1#0.{core::num::<}(#C1){(core::num) → core::bool}) {
48
+
final const synthesized core::int #1#1 = invalid-expression "Read of a non-const variable is not a constant expression.";
49
+
if(#1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t3 = a1 = #1#0{core::int} in true) || #1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t4 = a1 = #1#0{core::int} in true) && #1#0.{core::num::<}(invalid-expression "Read of a non-const variable is not a constant expression."){(core::num) → core::bool}) {
// pkg/front_end/testcases/patterns/issue51971_2.dart:6:27: Error: Read of a non-const variable is not a constant expression.
6
+
// if (x1 case int a1 && < a1 || int a1) { // Error.
7
+
// ^
8
+
//
9
+
// pkg/front_end/testcases/patterns/issue51971_2.dart:8:44: Error: Read of a non-const variable is not a constant expression.
10
+
// } else if (x1 case int a1 || int a1 && < a1) { // Error.
11
+
// ^
12
+
//
5
13
// pkg/front_end/testcases/patterns/issue51971_2.dart:27:22: Error: Read of a non-const variable is not a constant expression.
6
14
// case int a3 && < a3: // Error.
7
15
// ^
@@ -29,15 +37,17 @@ import "dart:collection" as col;
29
37
30
38
static method test1(dynamic x1) → dynamic {
31
39
{
32
-
hoisted dynamic a1;
40
+
hoisted core::int a1;
33
41
final synthesized dynamic #0#0 = x1;
34
-
if(#0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t1 = a1 = #0#0 in true) && #0#0.{core::num::<}(#C1){(core::num) → core::bool} || #0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t2 = a1 = #0#0 in true)) {
42
+
final const synthesized core::int #0#1 = invalid-expression "Read of a non-const variable is not a constant expression.";
43
+
if(#0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t1 = a1 = #0#0{core::int} in true) && #0#0.{core::num::<}(invalid-expression "Read of a non-const variable is not a constant expression."){(core::num) → core::bool} || #0#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t2 = a1 = #0#0{core::int} in true)) {
35
44
return a1;
36
45
}
37
46
else {
38
-
hoisted dynamic a1;
47
+
hoisted core::int a1;
39
48
final synthesized dynamic #1#0 = x1;
40
-
if(#1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t3 = a1 = #1#0 in true) || #1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t4 = a1 = #1#0 in true) && #1#0.{core::num::<}(#C1){(core::num) → core::bool}) {
49
+
final const synthesized core::int #1#1 = invalid-expression "Read of a non-const variable is not a constant expression.";
50
+
if(#1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t3 = a1 = #1#0{core::int} in true) || #1#0 is{ForNonNullableByDefault} core::int && (let final dynamic #t4 = a1 = #1#0{core::int} in true) && #1#0.{core::num::<}(invalid-expression "Read of a non-const variable is not a constant expression."){(core::num) → core::bool}) {
0 commit comments